.family-picker{margin-bottom:20px;min-width:0}
.family-rail-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.family-rail-heading h2{font-size:14px;letter-spacing:-.3px;font-weight:500}
.family-rail-heading>div{display:flex;gap:4px}
.family-rail-heading .icon-button{width:30px;height:28px;min-width:30px;min-height:28px;font-size:16px}
.family-prev>.ph,.photo-prev>.ph{transform:rotate(180deg)}
.family-rail{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:7px}
.family-rail::-webkit-scrollbar{display:none}
.family-rail[data-draggable]{touch-action:pan-x pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
.family-rail[data-draggable] .family-tile{cursor:grab}
.family-rail.is-dragging,.family-rail.is-dragging .family-tile{cursor:grabbing;scroll-behavior:auto}
.family-tile{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 8px;flex:0 0 126px;background:var(--surface);border-radius:8px;padding:9px 12px;min-width:0;text-align:left}
.family-tile>img{grid-column:1/-1;width:100%;height:48px;object-fit:contain;mix-blend-mode:multiply}
.family-tile>.ph{grid-column:1/-1;height:48px;display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--muted)}
.family-tile>span{font-size:12px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}
.family-tile>small{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}
.family-tile[aria-pressed=true]{background:var(--tint);color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.family-tile:hover:not(:disabled){background:var(--tint)}
.family-tile:disabled{opacity:.42;cursor:default}
.configuration-picker{margin-top:24px}
.configuration-row+.configuration-row{margin-top:20px}
.configuration-row>span{display:block;font-size:12px;color:var(--muted);margin-bottom:10px}
.configuration-sizes{display:flex;flex-wrap:wrap;gap:8px}
.configuration-sizes>a{font-size:13px;min-height:42px;min-width:50px;padding:10px 12px;background:var(--surface);border-radius:6px;text-align:center}
.configuration-sizes>a[aria-current=true],.configuration-variants>a[aria-current=true]{background:var(--tint);color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.configuration-variants{display:flex;gap:10px;flex-wrap:wrap}
.configuration-variants>a{background:var(--surface);padding:12px 15px;border-radius:7px;min-width:145px;flex:1}
.configuration-variants strong{display:block;font-size:13px;font-weight:500;line-height:1.5}
.configuration-variants small{display:block;font-size:11px;color:var(--muted);margin-top:5px}
.configuration-sizes>a:hover,.configuration-variants>a:hover{color:var(--accent)}
.product-quick-specs:has(>div:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 20px}
.photo-open{position:absolute;left:18px;bottom:18px;width:42px;height:42px;background:var(--card);color:var(--text);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:22px}
.photo-open:hover{background:var(--tint);color:var(--accent)}
#gallery-image[data-photo-open]{cursor:zoom-in}
.gallery-meta{display:flex;flex-wrap:wrap;gap:5px 18px;font-size:10px;line-height:1.6;color:var(--muted);margin-top:10px}
.product-page-top>.gallery{min-width:0}
.gallery-meta a{color:var(--muted)}
.gallery-meta a:hover{color:var(--accent)}
.photo-viewer{width:min(1200px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:22px 26px;border-radius:12px}
.photo-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:15px}
.photo-heading h2{font-size:23px;line-height:1.35;letter-spacing:-.7px}
.photo-heading>.icon-button{flex-shrink:0;font-size:28px;min-height:44px;min-width:44px}
.photo-stage{background:var(--surface);border-radius:8px;display:flex;align-items:center;justify-content:center;min-height:0}
.photo-stage>img{width:100%;height:min(65dvh,650px);object-fit:contain;mix-blend-mode:multiply}
.photo-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:15px}
.photo-controls>.icon-button{min-width:44px;min-height:44px;font-size:22px}
.photo-counter{font-size:13px;font-variant-numeric:tabular-nums;min-width:50px;text-align:center}
.photo-controls>a{font-size:12px;color:var(--muted);margin-left:auto}
.photo-provenance{font-size:10px;color:var(--muted);margin-top:12px}
.compare-bar{width:max-content;max-width:calc(100% - 32px);gap:18px;border-radius:12px;padding:12px 16px;align-items:center}
.compare-previews{display:flex;gap:18px;min-width:0}
.compare-preview{position:relative;padding-right:14px;min-width:0}
.compare-preview>a{display:flex;gap:10px;align-items:center}
.compare-preview img{height:44px;width:44px;object-fit:contain;background:var(--surface);border-radius:5px;mix-blend-mode:multiply}
.compare-preview>a>span{font-size:12px;font-weight:500;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compare-preview small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:4px}
.compare-preview>button{position:absolute;top:-5px;right:-2px;min-width:22px;min-height:24px;font-size:18px;color:var(--muted)}
.compare-preview>button:hover{color:var(--accent)}
#compare-count{font-size:11px;white-space:nowrap;color:var(--muted)}
body.has-compare-tray{padding-bottom:90px}
.compare-bar .button{min-height:42px;font-size:12px;padding:10px 18px;white-space:nowrap}
html[data-theme=dark] .family-tile>img,html[data-theme=dark] .photo-stage>img,html[data-theme=dark] .compare-preview img{mix-blend-mode:normal}
@media(max-width:1023px){.compare-preview>a>span{max-width:65px}.compare-previews{gap:12px}.compare-bar{gap:12px}}
@media(max-width:767px){
 .family-picker{margin-bottom:17px}.family-tile{flex-basis:111px;padding:8px 10px}.family-tile>img{height:44px}.family-tile>span{font-size:11px}
 .configuration-sizes>a{font-size:12px;min-width:48px;min-height:44px}.configuration-picker{margin-top:22px}.configuration-variants>a{padding:11px 13px;min-width:135px}
 .photo-viewer{padding:18px 16px}.photo-heading{gap:15px}.photo-heading h2{font-size:20px;letter-spacing:-.6px}.photo-stage>img{height:55dvh}.photo-controls{gap:10px}.photo-controls>a{font-size:11px}
 .photo-open{left:12px;bottom:12px}.compare-bar{gap:9px;padding:12px;bottom:max(12px,env(safe-area-inset-bottom));max-width:calc(100% - 24px)}
 .gallery-thumbs{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;max-width:100%;padding-bottom:7px}
 .gallery-thumbs>button{flex:0 0 64px;width:64px;height:54px}
 .gallery-meta{margin-top:7px;font-size:10px}
 .compare-previews{gap:6px}.compare-preview{padding-right:5px}.compare-preview>a>span{display:none}.compare-preview img{width:36px;height:40px}.compare-preview>button{right:-4px;top:-8px;background:var(--card);border-radius:50%;font-size:16px;min-width:20px;min-height:20px}
 .compare-bar .button{font-size:11px;padding:10px 12px}.compare-bar>#compare-clear{min-width:22px;width:22px}.compare-bar>#compare-count{font-size:10px}.compare-preview>a{min-width:40px;min-height:44px}body.has-compare-tray{padding-bottom:95px}
}
@media(prefers-reduced-motion:reduce){.family-rail{scroll-behavior:auto}}
