/* UW3D Scans v0.1.82 — layout-aware card scaling, area-scoped.
   100% preserves prior typography and card dimensions. Avoid transform:scale,
   which visually shrinks cards but leaves unusable gaps in grid layout. */

/* PUBLIC SCAN EXPLORER: desktop/tablet columns are derived from the base columns
   and selected scale. Does not affect the List view. */
.uw3d2-explorer .uwm180-grid:not([data-view="list"]){
    grid-template-columns:repeat(var(--uwm182-archive-columns-d,4),minmax(0,1fr));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card{
    min-height:calc(var(--uwm180-card-min-d,370px) * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__media{
    height:calc(var(--uwm180-card-image-d,190px) * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__body{
    padding:calc(13px * var(--uwm182-archive-scale,1)) calc(15px * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__body h3{
    font-size:clamp(12px,calc(16px * var(--uwm182-archive-scale,1)),20px);
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__location{
    font-size:clamp(9px,calc(10px * var(--uwm182-archive-scale,1)),12px);
    margin-bottom:calc(14px * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__metrics{
    padding-top:calc(11px * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__metrics .uw3d2-card__metric b{
    font-size:calc(clamp(9px,.78vw,12px) * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__metrics .uw3d2-card__metric small{
    font-size:calc(clamp(7px,.55vw,9px) * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__actions{
    gap:calc(8px * var(--uwm182-archive-scale,1));
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__button{
    padding:calc(10px * var(--uwm182-archive-scale,1)) calc(11px * var(--uwm182-archive-scale,1));
    font-size:clamp(10px,calc(10px * var(--uwm182-archive-scale,1)),14px);
}
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__detail-panel p{
    font-size:clamp(10px,calc(11px * var(--uwm182-archive-scale,1)),14px);
}
@media(max-width:1120px){
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]){grid-template-columns:repeat(var(--uwm182-archive-columns-t,3),minmax(0,1fr))}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__media{height:calc(var(--uwm180-card-image-t,166px) * var(--uwm182-archive-scale,1))}
}
@media(max-width:800px){
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]){grid-template-columns:repeat(var(--uwm182-archive-columns-s,2),minmax(0,1fr))}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__media{height:calc(var(--uwm180-card-image-s,190px) * var(--uwm182-archive-scale,1))}
}
@media(max-width:530px){
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]){grid-template-columns:minmax(0,1fr)}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card{min-height:calc(var(--uwm180-card-min-m,370px) * var(--uwm182-archive-scale,1))}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__media{height:calc(var(--uwm180-card-image-m,210px) * var(--uwm182-archive-scale,1))}
}

/* FEATURED SCANS: preserve source cardWidth, alignment and carousel behavior;
   scale the actual track/card geometry and content together. */
#featured-scans .uw3d2-scans__grid--static{
 max-width:calc(var(--uw3d2-col-count,4) * var(--uw3d2-card-width,380px) * var(--uwm182-home-scale,1) + (var(--uw3d2-col-count,4) - 1) * 16px);
}
#featured-scans.uw3d2-scans--start .uw3d2-scans__grid--static{
 max-width:calc(var(--uw3d2-col-count,4) * var(--uw3d2-card-width,380px) * var(--uwm182-home-scale,1) + (var(--uw3d2-col-count,4) - 1) * 16px);
}
#featured-scans .uw3d2-scans__grid--carousel>.uw3d2-card{
 flex-basis:clamp(max(210px,calc(250px * var(--uwm182-home-scale,1))),calc((min(100vw - 108px,var(--uw-shell)) - 48px) / 4 * var(--uwm182-home-scale,1)),calc(var(--uw3d2-card-width,380px) * var(--uwm182-home-scale,1)));
 width:clamp(max(210px,calc(250px * var(--uwm182-home-scale,1))),calc((min(100vw - 108px,var(--uw-shell)) - 48px) / 4 * var(--uwm182-home-scale,1)),calc(var(--uw3d2-card-width,380px) * var(--uwm182-home-scale,1)));
}
#featured-scans .uw3d2-card{min-height:calc(363px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__media{height:calc(197px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__body{padding:calc(13px * var(--uwm182-home-scale,1)) calc(15px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__body h3{font-size:clamp(12px,calc(16px * var(--uwm182-home-scale,1)),21px)}
#featured-scans .uw3d2-card__location{font-size:clamp(9px,calc(10px * var(--uwm182-home-scale,1)),12px);margin-bottom:calc(14px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__metrics{padding-top:calc(11px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__metrics .uw3d2-card__metric b{font-size:calc(clamp(9px,.78vw,12px) * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__metrics .uw3d2-card__metric small{font-size:calc(clamp(7px,.55vw,9px) * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__actions{gap:calc(8px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__actions .uw3d2-card__button{font-size:clamp(10px,calc(10px * var(--uwm182-home-scale,1)),14px);padding:calc(10px * var(--uwm182-home-scale,1)) calc(11px * var(--uwm182-home-scale,1))}
#featured-scans .uw3d2-card__detail-panel p{font-size:clamp(10px,calc(11px * var(--uwm182-home-scale,1)),14px)}
@media(max-width:1380px){#featured-scans .uw3d2-card__media{height:calc(170px * var(--uwm182-home-scale,1))}}
@media(max-width:1100px){#featured-scans .uw3d2-card__media{height:calc(145px * var(--uwm182-home-scale,1))}}
@media(max-width:800px){#featured-scans .uw3d2-card__media{height:calc(210px * var(--uwm182-home-scale,1))}}

/* FEATURED SITES: retain each site's configurable typography by multiplying
   its original variable values. Fixed CTA min size preserves tap accessibility. */
#featured-sites .uw3d2-sites__grid:not(.uw3d2-unused){
 max-width:calc(var(--uw3d2-sites-cols,3) * 440px * var(--uwm182-home-scale,1) + (var(--uw3d2-sites-cols,3) - 1) * 16px);
}
#featured-sites.uw3d2-sites--carousel .uw3d2-sites__grid{max-width:none}
#featured-sites.uw3d2-sites--carousel .uw3d2-site-card{
 flex-basis:min(calc(34vw * var(--uwm182-home-scale,1)),calc(420px * var(--uwm182-home-scale,1)));
 width:min(calc(34vw * var(--uwm182-home-scale,1)),calc(420px * var(--uwm182-home-scale,1)));
}
#featured-sites .uw3d2-site-card__image{height:calc(205px * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__body{padding:calc(16px * var(--uwm182-home-scale,1)) calc(18px * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__body h3{font-size:calc(var(--uw-card-title-size,23px) * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__location{font-size:calc(var(--uw-card-label-size,11px) * var(--uwm182-home-scale,1));margin-bottom:calc(15px * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__stats{padding:calc(12px * var(--uwm182-home-scale,1)) 0;margin-bottom:calc(14px * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__stat{gap:calc(7px * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__stat strong{font-size:calc(var(--uw-card-value-size,14px) * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__stat small{font-size:calc(var(--uw-card-label-size,11px) * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__cta{font-size:clamp(10px,calc(11px * var(--uwm182-home-scale,1)),14px);padding:calc(10px * var(--uwm182-home-scale,1)) calc(13px * var(--uwm182-home-scale,1));min-height:39px}
#featured-sites .uw3d2-site-card__badges .uw3d2-site-card__type,
#featured-sites .uw3d2-site-card__badges .uw3d2-site-card__depth{font-size:calc(var(--uw-card-label-size,11px) * var(--uwm182-home-scale,1));padding:calc(6px * var(--uwm182-home-scale,1)) calc(10px * var(--uwm182-home-scale,1))}
@media(max-width:1050px){#featured-sites.uw3d2-sites--carousel .uw3d2-site-card{flex-basis:min(calc(47vw * var(--uwm182-home-scale,1)),calc(420px * var(--uwm182-home-scale,1)));width:min(calc(47vw * var(--uwm182-home-scale,1)),calc(420px * var(--uwm182-home-scale,1)))}}
@media(max-width:650px){#featured-sites .uw3d2-site-card__image{height:calc(190px * var(--uwm182-home-scale,1))}}
/* The mobile-carousel stylesheet controls mobile width; its JS uses the same
   --uwm182-home-scale variable with a minimum safe touch width. */
@media(max-width:760px){
 #featured-scans.uw3d2-scans--mobile-carousel .uw3d2-scans__grid>.uw3d2-card,
 #featured-sites.uw3d2-sites--mobile-carousel .uw3d2-sites__grid>.uw3d2-site-card{flex-basis:var(--uw3d-mobile-card-px,min(84vw,380px));width:var(--uw3d-mobile-card-px,min(84vw,380px))}
}

/* Small details scale with the whole card; buttons remain readable at 70%. */
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__category,
#featured-scans .uw3d2-card__category{
 font-size:clamp(8px,calc(9px * var(--uwm182-archive-scale,var(--uwm182-home-scale,1))),12px);
 padding:calc(8px * var(--uwm182-archive-scale,var(--uwm182-home-scale,1))) calc(10px * var(--uwm182-archive-scale,var(--uwm182-home-scale,1)));
}
#featured-scans .uw3d2-card__category{font-size:clamp(8px,calc(9px * var(--uwm182-home-scale,1)),12px);padding:calc(8px * var(--uwm182-home-scale,1)) calc(10px * var(--uwm182-home-scale,1))}
#featured-sites .uw3d2-site-card__stat .uw3d2-icon,
#featured-sites .uw3d2-site-card__stat .uw3d2-site-icon{width:calc(24px * var(--uwm182-home-scale,1));height:calc(24px * var(--uwm182-home-scale,1))}
@media(max-width:530px){
 .uw3d2-explorer .uwm180-grid:not([data-view="list"])>.uwm180-item{
  width:clamp(85%,calc(100% * var(--uwm182-archive-scale,1)),100%);
  justify-self:center;
 }
}

/* Preserve the responsive baseline fonts and padding from v0.1.81. */
@media(max-width:1100px){
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__body,
 #featured-scans .uw3d2-card__body{padding:calc(12px * var(--uwm182-archive-scale,var(--uwm182-home-scale,1)))}
 #featured-scans .uw3d2-card__body{padding:calc(12px * var(--uwm182-home-scale,1))}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__body h3{font-size:calc(14px * var(--uwm182-archive-scale,1))}
 #featured-scans .uw3d2-card__body h3{font-size:calc(14px * var(--uwm182-home-scale,1))}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__metrics .uw3d2-card__metric b{font-size:calc(10px * var(--uwm182-archive-scale,1))}
 #featured-scans .uw3d2-card__metrics .uw3d2-card__metric b{font-size:calc(10px * var(--uwm182-home-scale,1))}
}
@media(max-width:530px){
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__metrics .uw3d2-card__metric b{font-size:calc(12px * var(--uwm182-archive-scale,1))}
 .uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__metrics .uw3d2-card__metric small{font-size:calc(9px * var(--uwm182-archive-scale,1))}
 #featured-scans .uw3d2-card__metrics .uw3d2-card__metric b{font-size:calc(12px * var(--uwm182-home-scale,1))}
 #featured-scans .uw3d2-card__metrics .uw3d2-card__metric small{font-size:calc(9px * var(--uwm182-home-scale,1))}
}
@media(max-width:650px){
 #featured-sites .uw3d2-site-card__stat small{font-size:clamp(10px,calc(var(--uw-card-label-size,11px) * var(--uwm182-home-scale,1)),13px)}
}
/* Detail triggers have their own selector and must scale as well. */
.uw3d2-explorer .uwm180-grid:not([data-view="list"]) .uw3d2-card__detail-trigger{font-size:calc(10px * var(--uwm182-archive-scale,1))}
#featured-scans .uw3d2-card__detail-trigger{font-size:calc(10px * var(--uwm182-home-scale,1))}
