.color-control{grid-column:1/-1;min-width:0;padding:0;margin:0;border:0}
.color-control legend{padding:0;margin:0 0 8px;color:var(--store-muted);font-size:12px}
.color-choices{display:flex;flex-wrap:wrap;gap:9px}
.color-choice{position:relative;flex:1 1 90px;max-width:160px;cursor:pointer}
.color-choice input{position:absolute;opacity:0;width:1px;height:1px;left:14px;top:22px}
.color-choice>span{min-height:48px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--store-line);font:13px Manrope,Arial,sans-serif;color:var(--store-text);transition:border-color .2s,background .2s}
.color-choice input:checked+span{border-color:var(--store-red);background:#97263118;box-shadow:inset 0 -2px var(--store-red)}
.color-choice input:focus-visible+span{outline:2px solid var(--store-text);outline-offset:3px}
.color-swatch{display:block;flex:0 0 20px;width:20px;height:20px;border:1px solid #dfddd766;background:#101214}
.color-swatch[data-color=Coyote]{background:#9a7d50}
.color-swatch[data-color=Camo]{background-color:#9c9177;background-image:radial-gradient(ellipse at 15% 25%,#50654d 0 25%,transparent 27%),radial-gradient(ellipse at 85% 80%,#655949 0 32%,transparent 34%),radial-gradient(ellipse at 75% 10%,#3b4031 0 17%,transparent 19%)}
.image-zoom-open{overflow:hidden}
.detail-zoom{position:fixed;inset:0;margin:auto;width:min(1100px,100vw);height:100dvh;max-width:100vw;max-height:100dvh;padding:0;border:1px solid var(--store-line);background:#121518;color:var(--store-text);overflow:hidden}
.detail-zoom[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.detail-zoom::backdrop{background:#07090bf0;backdrop-filter:blur(8px)}
.detail-zoom .detail-zoom-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;height:auto;border-bottom:1px solid var(--store-line)}
.detail-zoom-heading p{font-size:10px;letter-spacing:.15em;color:var(--store-muted);margin:0 0 5px}
.detail-zoom-heading h2{font:500 16px/1.5 Manrope,Arial,sans-serif;margin:0;letter-spacing:-.02em}
.detail-zoom-close{flex:0 0 44px;width:44px;height:44px;border:1px solid var(--store-line);font-size:27px;background:transparent;color:inherit}
.detail-zoom-surface{position:relative;min-width:0;min-height:0;overflow:hidden;touch-action:none;cursor:grab;outline-offset:-3px;background:radial-gradient(ellipse,#5965701c,transparent 70%)}
.detail-zoom-surface.is-panning{cursor:grabbing}
.detail-zoom-surface img{display:block;width:100%;height:100%;object-fit:contain;transform-origin:center;user-select:none;-webkit-user-drag:none;pointer-events:none;will-change:transform}
.detail-zoom-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--store-line);padding:14px 24px max(14px,env(safe-area-inset-bottom))}
.detail-zoom-tools p{font-size:12px;color:var(--store-muted);margin:0}
.detail-zoom-tools>div{display:flex;align-items:center;gap:8px}
.detail-zoom-tools button{height:44px;min-width:44px;padding:0 12px;border:1px solid var(--store-line);background:transparent;color:inherit;font:14px Manrope,Arial,sans-serif}
.detail-zoom-tools button:disabled{opacity:.35;cursor:default}
.detail-zoom-tools output{min-width:48px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}
.detail-zoom :is(button,.detail-zoom-surface):focus-visible{outline:2px solid var(--store-text);outline-offset:-3px}
@media(max-width:760px){.detail-zoom{border:0;width:100vw}.detail-zoom .detail-zoom-heading{padding:max(12px,env(safe-area-inset-top)) 16px 12px}.detail-zoom-heading h2{font-size:13px}.detail-zoom-tools{flex-direction:column;gap:10px;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.color-choice>span{padding:10px;font-size:12px;gap:8px}.detail-zoom-surface{overscroll-behavior:contain}}
@media(prefers-reduced-motion:reduce){.color-choice>span{transition:none}}
.detail-zoom button,.color-choice{touch-action:manipulation}
