.minifig-part-popup-head{grid-template-columns:40px minmax(0,1fr) 40px;align-items:center}
.minifig-info-back{display:grid;place-items:center;width:40px;height:40px;padding:0 0 3px!important;border:0;border-radius:50%;background:#223047;color:#eef3fa;font-size:1.25rem;line-height:1;font-weight:700;cursor:pointer}
.minifig-info-back.is-hidden{visibility:hidden;pointer-events:none}

#minifigPartPopupContent.minifig-info-mode{display:flex;flex-direction:column;overflow:hidden!important;padding:9px 1px 0!important}
.minifig-info-fixed{flex:0 0 auto;min-height:0}
.minifig-info-hero{margin:0 0 8px}
#minifigPartPopup .minifig-info-hero .part-info-hero-image{height:148px!important;padding:10px!important}
#minifigPartPopup .minifig-info-hero .part-info-hero-image img{max-width:82%!important;max-height:82%!important}
.minifig-info-tabs{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;flex:0 0 auto;margin:0 0 8px;padding:4px;border-radius:8px;background:#202a3c}
.minifig-info-tabs button{position:relative;z-index:1;min-width:0;padding:8px 5px;border:0;border-radius:6px;background:transparent;color:#aeb9c9;font-size:.7rem;font-weight:650;white-space:nowrap;transition:color .12s ease}
.minifig-info-tabs button.active{color:#111827}
.minifig-info-tab-highlight{position:absolute;z-index:0;top:4px;bottom:4px;left:0;width:0;border-radius:6px;background:var(--yellow,#ffd629);pointer-events:none;will-change:transform,width}
.minifig-info-viewport{flex:1 1 auto;min-height:0;overflow:hidden;overscroll-behavior-x:contain}
.minifig-info-track{display:grid;grid-template-columns:repeat(3,100%);width:100%;height:100%;will-change:transform}
.minifig-info-track.animating{transition:transform .22s ease}
.minifig-info-page{width:100%;height:100%;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:1px 2px 14px;scrollbar-width:none}
.minifig-info-page::-webkit-scrollbar{display:none}

.minifig-info-section{margin:0 0 18px}
.minifig-info-page>.minifig-info-section:first-child{margin-top:1px}
.minifig-info-section>.part-info-section-head{margin-bottom:8px}
.minifig-info-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px;padding:10px 12px;border-radius:9px;background:#122238;color:#b9cbe2;font-size:.7rem;line-height:1.35}
.minifig-info-summary b{color:#f2f6fb;font-size:.78rem}
.minifig-info-status-legend{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px;color:#8494aa;font-size:.61rem}
.minifig-info-status-legend span{display:inline-flex;align-items:center;gap:4px}
.minifig-info-dot{width:8px;height:8px;border-radius:50%;background:#607088}
.minifig-info-dot.now{background:#34d399}.minifig-info-dot.saved{background:#60a5fa}
.minifig-component-strip{display:flex;gap:9px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x;padding:2px 1px 7px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.minifig-component-strip::-webkit-scrollbar{display:none}
.minifig-component-card{position:relative;flex:0 0 112px;min-width:112px;padding:8px;border:1px solid #2a3850;border-radius:10px;background:#0d1522;color:inherit;text-align:left;scroll-snap-align:start;cursor:pointer}
.minifig-component-card.have{border-color:#3b7d67}.minifig-component-card.missing{opacity:.72}
.minifig-component-image{height:90px;display:grid;place-items:center;overflow:hidden;border-radius:8px;background:#fff}
.minifig-component-image img{display:block;width:100%;height:100%;object-fit:contain}
.minifig-component-card>b{display:block;margin-top:6px;color:#eef3fa;font-size:.66rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.minifig-component-card>small{display:block;margin-top:2px;color:#7f90a8;font-size:.56rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.minifig-component-state{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#2a3342;color:#94a3b8;font-size:.72rem;font-weight:800;box-shadow:0 1px 4px #0007}
.minifig-component-card.have .minifig-component-state{background:#1f8c68;color:#fff}.minifig-component-card.missing .minifig-component-state{background:#442a34;color:#ffb0bd}
.minifig-component-tags{display:flex;gap:4px;margin-top:5px;min-height:17px;flex-wrap:wrap}
.minifig-component-tags em{font-style:normal;padding:2px 5px;border-radius:999px;font-size:.5rem;font-weight:700;letter-spacing:.01em}
.minifig-component-tags .now{background:#143f34;color:#71e8bf}.minifig-component-tags .saved{background:#152f50;color:#8fc0ff}.minifig-component-tags .qty{background:#293143;color:#c5cfde}
.minifig-info-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 0 12px}
.minifig-info-stat{padding:10px;border-radius:9px;background:#0d1522;border:1px solid #243248}
.minifig-info-stat b{display:block;color:#f0f4fa;font-size:.82rem;line-height:1.15}.minifig-info-stat small{display:block;margin-top:3px;color:#7f90a8;font-size:.56rem}
.minifig-market-placeholder{padding:11px;border-radius:9px;background:#0d1522;border:1px solid #243248}
.minifig-market-placeholder-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.minifig-market-placeholder-head b{color:#eef3fa;font-size:.7rem}.minifig-market-placeholder-head small{color:#7f90a8;font-size:.55rem}
.minifig-sales-bars{height:54px;display:flex;align-items:end;gap:4px;padding:4px 2px;border-bottom:1px solid #29374c}
.minifig-sales-bars i{flex:1;min-width:3px;border-radius:3px 3px 0 0;background:#27364d;opacity:.72}
.minifig-entity-strip{display:flex;gap:9px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x;padding:2px 1px 8px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.minifig-entity-strip::-webkit-scrollbar{display:none}
.minifig-info-fig-card,.minifig-info-set-card{flex:0 0 126px;min-width:126px;padding:8px;border:1px solid #2a3850;border-radius:10px;background:#0d1522;color:inherit;text-align:left;scroll-snap-align:start}
.minifig-info-fig-card{cursor:pointer}.minifig-info-set-card{cursor:default}
.minifig-info-fig-card img,.minifig-info-set-card img{display:block;width:100%;height:96px;object-fit:contain;border-radius:8px;background:#fff}
.minifig-info-fig-card b,.minifig-info-set-card b{display:block;margin-top:6px;color:#eef3fa;font-size:.64rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.minifig-info-fig-card small,.minifig-info-set-card small{display:block;margin-top:2px;color:#7f90a8;font-size:.54rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.minifig-info-link-row{display:flex;gap:8px;margin:12px 0 2px}.minifig-info-link-row a{flex:1;padding:8px 10px;border-radius:8px;background:#202c40;color:#e7edf7;text-align:center;text-decoration:none;font-size:.66rem;font-weight:650}
.minifig-info-loading{padding:18px 4px;color:#8fa0b6;font-size:.72rem;text-align:center}
.minifig-info-note{margin:8px 0 0;color:#7f90a8;font-size:.58rem;line-height:1.35}
.minifig-lite-part-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}.minifig-lite-part-stats>div{padding:8px 5px;border-radius:8px;background:#0d1522;text-align:center}.minifig-lite-part-stats b{display:block;color:#eef3fa;font-size:.7rem}.minifig-lite-part-stats small{display:block;margin-top:2px;color:#7f90a8;font-size:.5rem}
@media(max-width:390px){
  #minifigPartPopup .minifig-info-hero .part-info-hero-image{height:132px!important;padding:8px!important}
  .minifig-info-tabs button{font-size:.65rem;padding-left:3px;padding-right:3px}
  .minifig-component-card{flex-basis:102px;min-width:102px}.minifig-component-image{height:82px}
  .minifig-info-fig-card,.minifig-info-set-card{flex-basis:116px;min-width:116px}.minifig-info-fig-card img,.minifig-info-set-card img{height:88px}
}
@media(prefers-reduced-motion:reduce){.minifig-info-track.animating{transition:none}}

/* v2.30.19 — let the browser recognise the section area as a horizontal pager,
   matching the proven Set Match gesture behaviour. The child strips remain their
   own horizontal scrollers and are ignored by the section-swipe JS. */
#minifigPartPopup .minifig-info-hero .part-info-hero-image{
  height:clamp(190px,25dvh,225px)!important;
  padding:12px!important;
}
#minifigPartPopup .minifig-info-hero .part-info-hero-image img{
  max-width:94%!important;
  max-height:94%!important;
}
.minifig-info-viewport{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.minifig-info-viewport::-webkit-scrollbar{display:none}
.minifig-info-page{scroll-snap-align:start;scroll-snap-stop:always}
@media(max-width:390px){
  #minifigPartPopup .minifig-info-hero .part-info-hero-image{height:190px!important;padding:10px!important}
}

/* v2.30.20 — one horizontal gesture controller owns both nested strips and pages.
   Native horizontal panning is disabled here so a drag can hand off from a strip
   to the page the instant the strip reaches its edge. Vertical scrolling stays native. */
.minifig-info-viewport{
  overflow:hidden!important;
  scroll-snap-type:none!important;
  touch-action:pan-y!important;
  -webkit-overflow-scrolling:auto!important;
}
.minifig-info-page{
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
  touch-action:pan-y!important;
}
.minifig-component-strip,.minifig-entity-strip{
  touch-action:pan-y!important;
  overscroll-behavior-x:none!important;
  scroll-snap-type:none!important;
  -webkit-overflow-scrolling:auto!important;
}
.minifig-info-tab-highlight.animating{transition:transform .22s ease,width .22s ease}

/* Detector working state: clean two-line label, no orphaned spinner glyph. */
#detectBtn.detector-working{
  min-height:74px;
  display:flex!important;
  align-items:center;
  justify-content:center;
  padding:11px 18px!important;
  text-align:center;
}
#detectBtn.detector-working .button-spinner{display:none!important}
#detectBtn.detector-working>span:last-child{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0}
#detectBtn.detector-working b{display:block;font-size:.96rem;line-height:1.18;font-weight:720}
#detectBtn.detector-working small{display:block;font-size:.68rem;line-height:1.2;font-weight:560;opacity:.72}
@media(prefers-reduced-motion:reduce){.minifig-info-tab-highlight.animating{transition:none}}
