/* ── TalPress: variation buttons (replaces WooCommerce variation <select> on single product) ── */
.tpvb-sr-only {position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important;}
.tpvb-group {display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 5px; margin: 4px 0; box-sizing: border-box;}
.tpvb-group .tpvb-opt {display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 40px; padding: 8px 18px !important;
    margin: 0; border: 1px solid #cc753b !important; border-radius: 50px !important; background: #fbf6ec !important;
    color: #47331c !important; font-family: inherit; font-size: 15px !important; font-weight: 600; line-height: 1.2; text-align: center; cursor: pointer;
    user-select: none; box-shadow: none; text-decoration: none; transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.15s ease;}
.tpvb-group .tpvb-opt:hover {background: #cc753b !important; color: #fbf6ec !important; border-color: #cc753b !important;}
.tpvb-group .tpvb-opt:focus-visible {outline: 0; box-shadow: 0 0 0 3px rgba(204, 117, 59, 0.35);}
.tpvb-group .tpvb-opt.is-checked, .tpvb-group .tpvb-opt[aria-checked="true"] {background: #cc753b !important; color: #fbf6ec !important; border-color: #cc753b !important; animation: tpvb-pop 0.22s ease both;}
.tpvb-group .tpvb-opt.is-checked:hover, .tpvb-group .tpvb-opt[aria-checked="true"]:hover {background: #b36532 !important; color: #fbf6ec !important; border-color: #b36532 !important;}
.tpvb-group .tpvb-opt.is-disabled, .tpvb-group .tpvb-opt[aria-disabled="true"] {opacity: 0.45; cursor: not-allowed; text-decoration: line-through !important; background: #fbf6ec !important; color: #47331c !important; border-color: #d8c89e !important;}
.tpvb-group .tpvb-opt.is-disabled:hover, .tpvb-group .tpvb-opt[aria-disabled="true"]:hover {background: #fbf6ec !important; color: #47331c !important; border-color: #d8c89e !important;}
@media all and (max-width: 640px){
.tpvb-group {gap: 6px;}
.tpvb-group .tpvb-opt {min-height: 44px; padding: 10px 16px; font-size: 16px;margin-inline-start:0 !important;}
}
@media all and (prefers-reduced-motion: reduce){
.tpvb-group .tpvb-opt {transition: none;}
.tpvb-group .tpvb-opt.is-checked, .tpvb-group .tpvb-opt[aria-checked="true"] {animation: none;}
}
@keyframes tpvb-pop{
0% {transform: scale(1);}
50% {transform: scale(1.08);}
100% {transform: scale(1);}
}
