/* Published profiles keep the street palette and compact swipeable rows. */
#view-gallery{max-width:1320px;margin:0 auto}
#view-gallery>.topbar{position:relative;top:auto;background:transparent;border:0;box-shadow:none;backdrop-filter:none;padding:16px 0 6px;margin:0 28px}
#view-gallery .catalog-brand{min-width:0}
#view-gallery .brand{font-family:var(--font-d);font-size:36px;line-height:1.1;letter-spacing:.035em;text-transform:none}
#catalogIntro{font-size:12px;line-height:1.5;color:#cbbdc9;margin:7px 0 0}
#view-gallery .brand-nav{margin:0 28px 8px;padding:0;justify-content:flex-start;gap:22px;flex-wrap:wrap}
#view-gallery .brand-nav .bn-link{font-size:14px;min-height:44px}
.catalog-auth-actions{display:flex;gap:8px;align-items:center}
.catalog-auth-actions .btn{min-height:44px;font-size:13px;letter-spacing:0;padding:10px 16px;box-shadow:none}
#view-gallery .gal-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 28px 4px}
#view-gallery .gal-selects{display:flex;gap:8px;min-width:0;max-width:100%}
#view-gallery .gal-selects .flt-sel{min-height:44px;min-width:0;max-width:100%}
#view-gallery #fltView{width:148px}
#view-gallery #fltCat{width:220px}
#view-gallery .gal-extra{display:flex;align-items:center;gap:8px;min-width:0}
#view-gallery .gal-extra>.flt-age,#view-gallery .gal-extra>.chip,#view-gallery .gal-filters>.chip{min-height:44px}
#view-gallery .flt-more{display:none}
#view-gallery .rails{padding:8px 28px 0}
/* A 320px placeholder cannot represent profiles with different details. Keep section
   geometry stable while images load and effects pause outside the viewport. */
#view-gallery .rail{content-visibility:visible;contain-intrinsic-size:none}
#view-gallery .catalog-group{margin-top:20px}
#view-gallery .catalog-group:first-child{margin-top:12px}
#view-gallery .catalog-group>.rail{margin-top:16px}
#view-gallery .catalog-group>.rail:first-child{margin-top:0}
#view-gallery .catalog-group-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;min-width:0}
#view-gallery .catalog-group .rail-active h3.rail-title{font-family:var(--font-b);font-size:14px;letter-spacing:0}
#view-gallery #rails.catalog-restored .rail,#view-gallery #rails.catalog-restored .card{animation:none}
#view-gallery #rails .rail>.rail-head{flex-wrap:nowrap;gap:8px;margin:0 0 6px;min-height:44px;padding:0}
#view-gallery #rails .rail>.rail-head::after{order:1;min-width:0}
#view-gallery #rails .rail>.rail-head[hidden]{display:none}
#view-gallery .rail-title,#view-gallery .rail-count{flex:none}
#view-gallery .rail-subtitle{display:block;margin-top:2px;font:11px/1.2 var(--font-b);letter-spacing:0;color:#dacbd8}
#view-gallery #rails .rail>.rail-track{display:flex;gap:12px;overflow-x:auto;padding:6px 6px 12px;margin:0 -6px;cursor:grab;scroll-snap-type:x proximity;scroll-padding-inline:6px;align-items:flex-start}
/* Profile rows retain native touch/trackpad and mouse dragging without a
   scrollbar gutter. Keep the six-pixel inset that clears focus and shadows. */
#view-gallery #rails .catalog-group>.rail>.rail-track{scrollbar-width:none;padding-bottom:6px}
#view-gallery #rails .catalog-group>.rail>.rail-track::-webkit-scrollbar{display:none}
#view-gallery #rails .rail>.rail-track.dragging{cursor:grabbing;scroll-snap-type:none}
#view-gallery #rails .rail>.rail-track>.card{display:flex;flex-direction:column;width:140px;min-width:0;max-width:none;flex:0 0 auto;scroll-snap-align:start}
#view-gallery #rails .rail .c-name{flex-wrap:wrap;gap:2px 6px}
#view-gallery #rails .rail .c-name .c-nm{flex:1 1 auto}
#view-gallery #rails .rail .c-details{padding:9px 10px;flex:none}
#view-gallery #rails .rail .c-photo{flex-shrink:0}
#view-gallery #rails .rail .c-card-details{position:relative;z-index:2;background:#110c19}
#view-gallery #rails .rail .c-recent-activity{margin:6px 0 0;font-size:11px;line-height:1.4;color:#c2b4c7}
#view-gallery #rails .rail .c-meta{display:flex;align-items:flex-start;gap:4px;margin-top:4px;min-height:18px}
#view-gallery #rails .rail .c-meta .c-city{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}
#view-gallery #rails .rail .c-meta .profile-badges{margin-left:auto;gap:3px}
#view-gallery #rails .rail .c-meta .profile-badges:empty{display:none}
#view-gallery #rails .rail .c-meta:has(>.profile-badges:only-child:empty){display:none}
#view-gallery #rails .rail .c-decor{flex-direction:column;align-items:stretch;gap:4px;margin-top:8px}
#view-gallery #rails .rail .c-card-decoration{position:relative;z-index:2;isolation:auto;overflow:hidden;padding:0 10px 8px;background:#110c19;border-top:0}
#view-gallery #rails .rail .c-card-decoration[hidden]{display:none}
#view-gallery #rails .rail .c-card-decoration .c-decor{position:relative;z-index:2;margin-top:0;gap:2px}
#view-gallery #rails .rail .c-status,#view-gallery #rails .rail .c-gift-mark{flex:none;min-width:0;min-height:20px;height:auto;margin-left:0;gap:5px}
#view-gallery #rails .rail .c-status .status-art,#view-gallery #rails .rail .c-gift-mark .g-art{width:18px;height:18px;flex:0 0 18px}
#view-gallery #rails .rail .c-status-name,#view-gallery #rails .rail .c-gift-name{display:block;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;line-height:1.3}
#view-gallery .public-rail{margin-top:8px}
#view-gallery .public-rail .rail-head{margin:0 0 16px;padding-inline:0}
#view-gallery .public-rail .rail-title{font-size:23px;letter-spacing:0}
#view-gallery .public-rail .c-name{font-size:15px}
#view-gallery .public-rail .c-city{font-size:12px}
/* The gift strip stays above profiles without reserving a second profile-sized header. */
#view-gallery #rails .gift-feed{margin-top:4px}
#view-gallery #rails .gift-feed>.rail-head{min-height:24px;margin-bottom:2px}
#view-gallery #rails .gift-feed .rail-title{font-family:var(--font-b);font-size:14px!important;line-height:1.4;letter-spacing:0}
#view-gallery #rails .gift-feed>.rail-track{gap:8px;padding-top:4px;padding-bottom:4px}
#view-gallery #rails .gf-item{min-height:44px;padding:6px 12px 6px 8px}
.catalog-error{text-align:center;padding:48px 20px;color:#cbbdc9}
.catalog-error .btn{margin-top:16px}
@media(max-width:760px){
  #view-gallery>.topbar{margin-inline:16px;padding:10px 0 2px;gap:6px;flex-wrap:wrap}
  #view-gallery .brand{font-size:30px}
  #view-gallery #catalogIntro{font-size:11px;line-height:1.45;margin-top:2px}
  #view-gallery .brand-nav{margin:0 16px;gap:18px}
  #view-gallery .gal-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 16px;gap:6px}
  #view-gallery .gal-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1/-1}
  #view-gallery #fltView,#view-gallery #fltCat,#view-gallery #fltGender{width:100%;min-width:0;min-height:44px}
  #view-gallery .flt-more{display:flex;justify-content:center;gap:8px;width:100%}
  #view-gallery .flt-more::after{content:'+';font-size:18px;line-height:1}
  #view-gallery .flt-more[aria-expanded=true]::after{content:'−'}
  #view-gallery .flt-more.has-selection{border-color:#b88296;color:#f2d8e1}
  #view-gallery .gal-extra{display:none;grid-column:1/-1}
  #view-gallery .gal-extra.is-open{display:flex}
  #view-gallery .gal-extra .flt-age{flex:1;min-width:0;gap:5px;padding-inline:8px}
  #view-gallery .gal-extra .flt-age input{width:38px;min-width:0;flex:1;max-width:54px}
  #view-gallery .gal-extra #fltActive{flex:none}
  #view-gallery .flt-reset{grid-column:1/-1;justify-self:start}
  #view-gallery .rails{padding:2px 16px 0}
  #view-gallery .catalog-group{margin-top:16px}
  #view-gallery .catalog-group:first-child{margin-top:2px}
  #view-gallery #rails .rail{margin-top:16px;animation:none}
  #view-gallery #rails .rail:first-child{margin-top:0}
  #view-gallery #rails .rail>.rail-head{margin:0;gap:6px}
  #view-gallery #rails .rail .rail-title{font-size:21px;letter-spacing:0}
  #view-gallery #rails .rail-active h3.rail-title{font-size:14px}
  #view-gallery #rails .rail>.rail-track>.card{width:min(120px,38vw);animation:none}
  #view-gallery #rails .rail .c-name{font-size:14px}
  #view-gallery #rails .rail .c-city{font-size:11px}
  #view-gallery #rails .gift-feed .rail-title{font-size:13px!important}
}
@media(max-width:540px){
  #view-gallery>.topbar{align-items:center;gap:4px;padding-top:8px}
  #view-gallery .brand{font-size:28px}
  #view-gallery .topbar-right{width:100%;justify-content:flex-start}
  #view-gallery .topbar-right:has(>.catalog-auth-actions[hidden]){width:auto;margin-left:auto}
  #view-gallery .brand-nav{gap:4px 16px}
  #view-gallery .brand-nav .bn-link{justify-content:flex-start;font-size:12px;min-width:0;white-space:normal}
  .catalog-auth-actions{width:100%}
  .catalog-auth-actions .btn{flex:1}
  #view-gallery .gal-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex-basis:100%}
  #view-gallery #fltView,#view-gallery #fltCat{width:100%}
  #view-gallery .flt-age{flex:1 1 170px;min-width:0;gap:5px;padding-inline:8px}
  #view-gallery .flt-age input{width:40px;min-width:0;flex:1;max-width:54px}
  #view-gallery .flt-reset{flex:0 1 auto}
  #view-gallery .public-rail .c-details{padding:9px 10px}
  #view-gallery .public-rail .c-name{font-size:14px}
}
/* A touch scroll must not leave the last touched portrait lifted or zoomed. */
@media(hover:none),(pointer:coarse){
  #view-gallery .card:hover,#view-gallery .card:hover .cov{transform:none}
}
