:root{--tcs-mobile-grid-min:140px;--tcs-mobile-grid-template:repeat(auto-fit,minmax(min(var(--tcs-mobile-grid-min,140px),100%),1fr));--tcs-mobile-grid-template-color:var(--tcs-mobile-grid-template);--tcs-mobile-grid-template-size:var(--tcs-mobile-grid-template)}
.tcs-swatch-field{margin:12px 0 18px}
.tcs-swatch-head{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-bottom:6px}
.tcs-swatch-label{font-weight:600;letter-spacing:.03em;font-size:12px;text-transform:uppercase;color:#111827}
.tcs-swatch-current{font-size:12px;color:#4b5563}
.tcs-swatch-grid{display:grid;grid-template-columns:repeat(var(--tcs-grid-cols),minmax(0,1fr));gap:var(--tcs-swatch-grid-gap,8px)}
.tcs-layout-list.tcs-swatch-grid{grid-template-columns:repeat(1,minmax(0,1fr))}
.tcs-swatch-btn{--tcs-swatch-btn-radius:10px;--tcs-swatch-btn-padding-y-default:8px;--tcs-swatch-btn-padding-x-default:10px;--tcs-swatch-btn-border-color-default:#d1d5db;--tcs-swatch-btn-bg-default:#fff;--tcs-swatch-btn-active-bg-default:#e5e7eb;--tcs-swatch-btn-active-border-color-default:#111827;--tcs-swatch-btn-active-border-width-default:1px;position:relative;display:flex;align-items:center;gap:var(--tcs-swatch-grid-gap,8px);width:100%;padding:var(--tcs-swatch-btn-padding-y,var(--tcs-swatch-btn-padding-y-default,8px)) var(--tcs-swatch-btn-padding-x,var(--tcs-swatch-btn-padding-x-default,10px));border:var(--tcs-swatch-btn-border-width,1px) solid var(--tcs-swatch-btn-border-color,var(--tcs-swatch-btn-border-color-default,#d1d5db));background:var(--tcs-swatch-btn-bg,var(--tcs-swatch-btn-bg-default,#fff));border-radius:var(--tcs-swatch-btn-radius,10px);cursor:pointer;transition:all .18s ease;min-height:38px;text-decoration:none;box-shadow:none}
.tcs-swatch-btn .tcs-swatch-text{flex:1;text-align:left;font-size:var(--tcs-swatch-text-size,13px);font-weight:var(--tcs-swatch-text-weight,400);color:#111827;line-height:1.25}
.tcs-swatch-btn .tcs-swatch-text,
.tcs-swatch-btn .tcs-swatch-text-size{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:normal;word-break:normal;overflow-wrap:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.tcs-swatch-btn .tcs-swatch-text:empty{display:none}
.tcs-swatch-chip{width:var(--tcs-chip-w,22px);height:var(--tcs-chip-h,22px);border-radius:6px;border:var(--tcs-swatch-chip-border-width,1px) solid var(--tcs-swatch-chip-border-color,#e5e7eb);background:#f3f4f6;display:inline-block;flex-shrink:0}
.tcs-swatch-chip--split{background:linear-gradient(90deg,var(--tcs-swatch-primary,#f3f4f6) 0 50%,var(--tcs-swatch-secondary,#f3f4f6) 50% 100%)}
.tcs-swatch-chip--image{background-size:var(--tcs-chip-img-mode,cover);background-position:center center; border-color:transparent;background-repeat:no-repeat;}
.tcs-swatch-btn:hover{border-color:var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827));box-shadow:none;transform:translateY(-1px)}
.tcs-swatch-btn.is-active,
.tcs-swatch-btn[aria-pressed="true"]{background:var(--tcs-swatch-btn-active-bg,var(--tcs-swatch-btn-active-bg-default,#e5e7eb)) !important;outline:var(--tcs-swatch-active-outline-width,2px) solid var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827)) !important;border-color:var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827)) !important;border-width:var(--tcs-swatch-btn-border-width,var(--tcs-swatch-btn-active-border-width-default,1px))}
.tcs-swatch-btn.is-disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}
.tcs-swatch-btn.is-disabled:hover{border-color:var(--tcs-swatch-btn-border-color,var(--tcs-swatch-btn-border-color-default,#d1d5db))}
.tcs-chip-fill{padding:0 !important;min-height:0 !important;align-items:stretch;justify-content:center}
.tcs-chip-fill .tcs-swatch-chip{width:100%;height:100%;border-radius:inherit;border:0}
.tcs-chip-fill .tcs-swatch-text{display:none}
.tcs-image-only.tcs-swatch-color{padding:0 !important;gap:0 !important;min-height:var(--tcs-chip-h,22px) !important;align-items:stretch;justify-content:stretch}
.tcs-image-only.tcs-swatch-color .tcs-swatch-chip{height:100%;border:0;border-radius:inherit}
.tcs-archive-btn.tcs-image-only.tcs-swatch-color{border:0 !important;padding:0 !important}
.tcs-image-only.tcs-shape-circle.tcs-swatch-color{padding:0 !important;min-height:var(--tcs-chip-h,22px) !important;align-items:center;justify-content:center}
.tcs-image-only.tcs-shape-circle.tcs-swatch-color .tcs-swatch-chip{border:0;border-radius:inherit;min-height:var(--tcs-chip-h,22px)}
.tcs-shape-circle .tcs-swatch-chip{border-radius:50% !important}
.tcs-shape-circle{border-radius:999px !important}
.tcs-shape-square .tcs-swatch-chip{border-radius:0 !important}
.tcs-shape-square{border-radius:0 !important}
.tcs-grid-size{justify-content:flex-start; }
.tcs-swatch-grid.tcs-theme-minimal {max-width: 100%;}
.tcs-theme-basic .tcs-swatch-btn,
.tcs-swatch-dropdown.tcs-theme-basic{--tcs-swatch-btn-radius:12px;--tcs-swatch-btn-border-color-default:#d7dce3;--tcs-swatch-btn-bg-default:linear-gradient(135deg,#f8fafc,#eef2f7);--tcs-swatch-btn-active-bg-default:#e0e7ff;--tcs-swatch-btn-active-border-color-default:#1d4ed8}
.tcs-theme-basic .tcs-swatch-btn:hover{transform:translateY(-2px)}

.tcs-theme-dark .tcs-swatch-btn,
.tcs-swatch-dropdown.tcs-theme-dark{--tcs-swatch-btn-border-color-default:#1f2937;--tcs-swatch-btn-bg-default:#0b0f1a;--tcs-swatch-btn-active-bg-default:#0b1220;--tcs-swatch-btn-active-border-color-default:#38bdf8;--tcs-swatch-btn-active-border-width-default:2px;color:#e2e8f0}
.tcs-theme-dark .tcs-swatch-btn .tcs-swatch-text,
.tcs-swatch-dropdown.tcs-theme-dark .tcs-toggle-current{color:#e2e8f0}
.tcs-theme-dark .tcs-swatch-btn:hover{border-color:var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#38bdf8));transform:translateY(-2px)}
.tcs-theme-dark .tcs-swatch-chip{border-color:var(--tcs-swatch-chip-border-color,#334155);background:#111827}
.tcs-theme-minimal .tcs-swatch-btn,
.tcs-swatch-dropdown.tcs-theme-minimal{--tcs-swatch-btn-radius:6px;--tcs-swatch-btn-padding-y-default:6px;--tcs-swatch-btn-padding-x-default:8px;--tcs-swatch-btn-border-color-default:#e5e7eb}
.tcs-theme-minimal .tcs-swatch-btn:hover{transform:none}
.tcs-grid-color .tcs-swatch-btn.tcs-swatch-chip-only.tcs-swatch-render-color{--tcs-swatch-btn-bg-default:#fff;box-sizing:border-box;width:var(--tcs-swatch-chip-only-width,calc(var(--tcs-chip-w,22px) + var(--tcs-swatch-chip-padding-total,14px)));min-width:var(--tcs-swatch-chip-only-width,calc(var(--tcs-chip-w,22px) + var(--tcs-swatch-chip-padding-total,14px)));max-width:var(--tcs-swatch-chip-only-width,calc(var(--tcs-chip-w,22px) + var(--tcs-swatch-chip-padding-total,14px)));height:var(--tcs-swatch-chip-only-height,calc(var(--tcs-chip-h,22px) + var(--tcs-swatch-chip-padding-total,14px)));min-height:var(--tcs-swatch-chip-only-height,calc(var(--tcs-chip-h,22px) + var(--tcs-swatch-chip-padding-total,14px)));padding:var(--tcs-swatch-chip-padding,7px) !important;gap:0 !important;align-items:center;justify-content:center;justify-self:start}
.tcs-grid-color .tcs-swatch-btn.tcs-swatch-chip-only.tcs-swatch-render-color:hover{transform:none}
.tcs-grid-color .tcs-swatch-btn.tcs-swatch-chip-only.tcs-swatch-render-color .tcs-swatch-chip{display:block;width:var(--tcs-chip-w,22px);height:var(--tcs-chip-h,22px);margin:0}
.tcs-grid-color .tcs-swatch-btn.tcs-swatch-chip-only.tcs-swatch-render-color.is-active,
.tcs-grid-color .tcs-swatch-btn.tcs-swatch-chip-only.tcs-swatch-render-color[aria-pressed="true"]{background:var(--tcs-swatch-btn-active-bg,var(--tcs-swatch-btn-active-bg-default,var(--tcs-swatch-btn-bg,var(--tcs-swatch-btn-bg-default,#fff)))) !important;border-color:var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827)) !important;outline:0 !important;box-shadow:0 0 0 var(--tcs-swatch-active-outline-width,2px) var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827)) inset !important;transform:none}
.tcs-grid-size .tcs-size-btn{box-sizing:border-box;width:var(--tcs-size-swatch-btn-width,100%);height:var(--tcs-size-swatch-btn-height,auto);min-height:var(--tcs-size-swatch-btn-min-height,38px);justify-self:start}
.tcs-archive-swatches{color:transparent;border-color:transparent !important;box-shadow:none !important}
.tcs-archive-swatches .tcs-archive-btn{-webkit-appearance:none;appearance:none;color:transparent !important;border-width:var(--tcs-swatch-btn-border-width,0px) !important;border-style:solid !important;border-color:var(--tcs-swatch-btn-border-color,transparent) !important;box-shadow:none !important}
.tcs-archive-swatches .tcs-archive-btn:hover{border-color:var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-border-color,transparent)) !important;box-shadow:none !important}
.tcs-archive-swatches .tcs-archive-btn::before,
.tcs-archive-swatches .tcs-archive-btn::after{border-color:transparent !important;box-shadow:none !important}
.tcs-archive-swatches .tcs-archive-btn.is-active,
.tcs-archive-swatches .tcs-archive-btn[aria-pressed="true"]{border-width:var(--tcs-swatch-btn-border-width,0px) !important;border-color:var(--tcs-swatch-btn-active-border-color,transparent) !important;outline:var(--tcs-swatch-active-outline-width,0px) solid var(--tcs-swatch-btn-active-border-color,transparent) !important;box-shadow:0 0 0 var(--tcs-swatch-active-outline-width,0px) var(--tcs-swatch-btn-active-border-color,transparent) inset !important}
.tcs-archive-swatches .tcs-swatch-chip{border-width:var(--tcs-swatch-chip-border-width,0px) !important;border-color:var(--tcs-swatch-chip-border-color,transparent) !important;box-shadow:none !important}
.tcs-swatch-btn:focus-visible{outline:2px solid #2563eb;outline-offset:1px}
.tcs-swatch-field select[data-tcs-swatch="1"]{margin-top:6px}
.tcs-swatch-dropdown{--tcs-swatch-btn-radius:10px;--tcs-swatch-btn-padding-y-default:8px;--tcs-swatch-btn-padding-x-default:10px;--tcs-swatch-btn-border-color-default:#d1d5db;--tcs-swatch-btn-bg-default:#fff;--tcs-swatch-btn-active-border-color-default:#111827;position:relative}
.tcs-swatch-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--tcs-swatch-btn-padding-y,var(--tcs-swatch-btn-padding-y-default,8px)) var(--tcs-swatch-btn-padding-x,var(--tcs-swatch-btn-padding-x-default,10px));border:var(--tcs-swatch-btn-border-width,1px) solid var(--tcs-swatch-btn-border-color,var(--tcs-swatch-btn-border-color-default,#d1d5db));border-radius:var(--tcs-swatch-btn-radius,10px);background:var(--tcs-swatch-btn-bg,var(--tcs-swatch-btn-bg-default,#fff));cursor:pointer;gap:var(--tcs-swatch-grid-gap,10px)}
.tcs-toggle-current{font-size:var(--tcs-swatch-text-size,13px);font-weight:var(--tcs-swatch-text-weight,400);color:#111827}
.tcs-toggle-caret{font-size:12px;color:#6b7280}
.tcs-swatch-dropdown.tcs-theme-dark .tcs-toggle-caret{color:#94a3b8}
.tcs-swatch-panel{margin-top:8px}
.tcs-swatch-panel[hidden]{display:none}
.tcs-swatch-dropdown.is-open .tcs-swatch-toggle{border-color:var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827));box-shadow:0 0 0 var(--tcs-swatch-active-outline-width,1px) var(--tcs-swatch-btn-active-border-color,var(--tcs-swatch-btn-active-border-color-default,#111827)) inset}
.tcs-swatch-text.tcs-swatch-text-size {text-align:var(--tcs-size-swatch-text-align,center);}
.woocommerce-product-gallery__image .tcs-hover-preview-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center center;z-index:3;opacity:0;pointer-events:none;transition:opacity 120ms ease}
.woocommerce-product-gallery__image .tcs-hover-preview-img.is-visible{opacity:1}
.woocommerce-product-gallery .tcs-variation-gallery-thumbs{display:flex!important;flex-wrap:wrap;gap:10px;margin-top:14px;visibility:visible!important;opacity:1!important}
.tcs-variation-gallery-thumbs[hidden]{display:none!important}
.woocommerce-product-gallery .tcs-variation-gallery-thumbs-host{display:flex!important;flex-wrap:wrap;gap:10px;visibility:visible!important;opacity:1!important}
.woocommerce-product-gallery .tcs-variation-gallery-thumb-item{float:none!important;width:auto!important;margin:0!important;padding:0!important;list-style:none!important}
.tcs-variation-gallery-thumb{display:inline-flex;align-items:center;justify-content:center;width:var(--tcs-variation-gallery-thumb-size,72px);height:var(--tcs-variation-gallery-thumb-size,72px);padding:0;border:var(--tcs-variation-gallery-thumb-outline-width,1px) solid var(--tcs-variation-gallery-thumb-outline-color,#d1d5db);background:#fff;border-radius:10px;cursor:pointer;overflow:hidden;transition:border-color var(--tcs-variation-gallery-transition-speed,180ms) ease,box-shadow var(--tcs-variation-gallery-transition-speed,180ms) ease,transform .18s ease,opacity var(--tcs-variation-gallery-transition-speed,180ms) ease}
.tcs-variation-gallery-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.tcs-variation-gallery-thumb-img{display:block;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat}
.tcs-variation-gallery-thumb:hover{border-color:var(--tcs-variation-gallery-thumb-active-outline-color,#111827);transform:translateY(-1px)}
.tcs-variation-gallery-thumb.is-active,
.tcs-variation-gallery-thumb[aria-pressed="true"]{border-color:var(--tcs-variation-gallery-thumb-active-outline-color,#111827);box-shadow:0 0 0 var(--tcs-variation-gallery-thumb-outline-width,1px) var(--tcs-variation-gallery-thumb-active-outline-color,#111827) inset}
@media (max-width:640px){
.tcs-swatch-grid:not(.tcs-layout-list){grid-template-columns:var(--tcs-mobile-grid-template)}
.tcs-swatch-grid.tcs-grid-color:not(.tcs-layout-list){grid-template-columns:var(--tcs-mobile-grid-template-color,var(--tcs-mobile-grid-template))}
.tcs-swatch-grid.tcs-grid-size:not(.tcs-layout-list){grid-template-columns:var(--tcs-mobile-grid-template-size,var(--tcs-mobile-grid-template))}
.tcs-swatch-btn{padding:var(--tcs-swatch-btn-padding-y,7px) var(--tcs-swatch-btn-padding-x,8px);gap:var(--tcs-swatch-grid-gap,6px)}
.tcs-variation-gallery-thumb{width:min(var(--tcs-variation-gallery-thumb-size,72px),60px);height:min(var(--tcs-variation-gallery-thumb-size,72px),60px)}}
