.cmsp-sample-picker{max-width:100%;margin:2rem 0;font-family:inherit;background:#fff;border:1px solid #e5e7eb;border-radius:1rem;padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.04),0 4px 16px rgba(0,0,0,.03)}.cmsp-picker-heading{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;line-height:1.3;color:inherit}.cmsp-picker-subtitle{font-size:.95rem;color:#6b7280;margin:0 0 1.25rem;line-height:1.5}.cmsp-status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;margin-bottom:1.25rem;position:sticky;top:70px;z-index:10;transition:box-shadow .2s ease}.cmsp-status-bar.cmsp-stuck{box-shadow:0 4px 12px rgba(0,0,0,.08)}.cmsp-status-counter{font-size:.95rem;font-weight:600;color:#111827;white-space:nowrap}.cmsp-count-current{font-size:1.15rem;font-weight:700;color:#2563eb;transition:color .2s ease}.cmsp-status-bar.cmsp-complete .cmsp-count-current{color:#16a34a}.cmsp-status-message{flex:1;font-size:.85rem;color:#6b7280;text-align:right}.cmsp-status-bar.cmsp-complete .cmsp-status-message{color:#16a34a;font-weight:600}.cmsp-progress-bar{width:100%;height:4px;background:#e5e7eb;border-radius:2px;overflow:hidden}.cmsp-progress-fill{height:100%;background:#2563eb;border-radius:2px;transition:width .35s cubic-bezier(.4,0,.2,1),background .2s ease}.cmsp-status-bar.cmsp-complete .cmsp-progress-fill{background:#16a34a}.cmsp-group{margin-bottom:1.5rem}.cmsp-group:last-child{margin-bottom:1rem}.cmsp-group-header{margin-bottom:.625rem;padding-bottom:.375rem;border-bottom:1px solid #e5e7eb}.cmsp-group-name{font-size:1.05rem;font-weight:600;margin:0 0 .125rem;color:#1f2937;line-height:1.4}.cmsp-group-description{font-size:.825rem;color:#6b7280;margin:0;line-height:1.45}.cmsp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.cmsp-card{position:relative;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;overflow:hidden;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease;user-select:none;-webkit-user-select:none}.cmsp-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px rgba(0,0,0,.06);transform:translateY(-2px)}.cmsp-card:active{transform:translateY(0) scale(.98)}.cmsp-card.cmsp-selected{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15),0 4px 12px rgba(37,99,235,.1)}.cmsp-card.cmsp-selected:hover{border-color:#1d4ed8}.cmsp-card.cmsp-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.cmsp-card.cmsp-disabled:hover{transform:none;box-shadow:none;border-color:#e5e7eb}.cmsp-card.cmsp-out-of-stock{opacity:.5;cursor:not-allowed}.cmsp-card.cmsp-out-of-stock:hover{transform:none;box-shadow:none;border-color:#e5e7eb}.cmsp-card.cmsp-out-of-stock .cmsp-card-image img{filter:grayscale(60%)}.cmsp-card-image{position:relative;aspect-ratio:1/1;overflow:hidden;background:#f3f4f6}.cmsp-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.cmsp-card:hover:not(.cmsp-out-of-stock):not(.cmsp-disabled) .cmsp-card-image img{transform:scale(1.05)}.cmsp-card-check{position:absolute;top:.5rem;right:.5rem;width:28px;height:28px;background:#2563eb;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .2s cubic-bezier(.34,1.56,.64,1)}.cmsp-card-check svg{width:16px;height:16px}.cmsp-card.cmsp-selected .cmsp-card-check{opacity:1;transform:scale(1)}.cmsp-oos-badge{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);color:#fff;font-size:.7rem;font-weight:600;text-align:center;padding:.25rem 0;text-transform:uppercase;letter-spacing:.03em}.cmsp-card-body{padding:.625rem .75rem;text-align:center}.cmsp-card-label{font-size:.85rem;font-weight:500;color:#374151;line-height:1.3;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmsp-card.cmsp-selected .cmsp-card-label{color:#1d4ed8;font-weight:600}.cmsp-card-description{display:block;font-size:.75rem;color:#9ca3af;line-height:1.35;margin-top:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmsp-card-link{position:absolute;top:.5rem;left:.5rem;width:26px;height:26px;background:rgba(255,255,255,.85);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#6b7280;opacity:0;transition:opacity .2s ease,color .15s ease,background .15s ease;z-index:2;text-decoration:none}.cmsp-card:hover .cmsp-card-link{opacity:1}.cmsp-card-link:hover{color:#2563eb;background:rgba(255,255,255,.95)}.cmsp-card-link svg{width:14px;height:14px}.cmsp-add-to-cart-form{margin-top:.5rem}.cmsp-add-to-cart-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;line-height:1.4;color:#fff;background:#2563eb;border:none;border-radius:.625rem;cursor:pointer;transition:background .2s ease,opacity .2s ease,transform .1s ease}.cmsp-add-to-cart-btn:hover:not(:disabled){background:#1d4ed8}.cmsp-add-to-cart-btn:active:not(:disabled){transform:scale(.98)}.cmsp-add-to-cart-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.7}.cmsp-add-to-cart-btn.cmsp-btn-success{background:#16a34a}.cmsp-add-to-cart-btn.cmsp-btn-loading{pointer-events:none;opacity:.8}@media (max-width:768px){.cmsp-sample-picker{padding:1rem;border-radius:.75rem}.cmsp-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem}.cmsp-picker-heading{font-size:1.25rem}.cmsp-card-body{padding:.5rem .625rem}.cmsp-card-label{font-size:.8rem}.cmsp-group-name{font-size:.95rem}.cmsp-status-bar{border-radius:.625rem}}@media (max-width:480px){.cmsp-sample-picker{padding:.75rem;margin:1rem 0}.cmsp-grid{grid-template-columns:repeat(2,1fr);gap:.625rem}.cmsp-card-check{width:24px;height:24px}.cmsp-card-check svg{width:14px;height:14px}.cmsp-card-link{width:22px;height:22px;opacity:1}.cmsp-card-link svg{width:12px;height:12px}}@keyframes cmsp-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.cmsp-card.cmsp-just-selected{animation:cmsp-pulse .3s ease}@keyframes cmsp-fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cmsp-sample-picker{animation:cmsp-fadeIn .4s ease-out}.cmsp-group{animation:cmsp-fadeIn .4s ease-out;animation-fill-mode:both}.cmsp-group:nth-child(2){animation-delay:.05s}.cmsp-group:nth-child(3){animation-delay:.1s}.cmsp-group:nth-child(4){animation-delay:.15s}.cmsp-group:nth-child(5){animation-delay:.2s}.cmsp-group:nth-child(6){animation-delay:.25s}