/* Editorial discovery, distinct from the full Search catalog. */
.feed-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:4px 0 28px}
.feed-intro h1{font-size:clamp(26px,3.5vw,44px);line-height:1.15;letter-spacing:-.045em;margin:10px 0}
.feed-section{margin:0 0 38px;min-width:0}
.feed-section>header{margin:0 0 18px}.feed-section h2{font-size:26px;letter-spacing:-.035em;margin:6px 0}
#marketView .feed-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/4);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 0 14px}
.feed-rail>.product-card{scroll-snap-align:start}.feed-empty{color:#a6adb5}
#marketView .for-you{margin:0 0 38px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.empty-state{display:flex;flex-direction:column;align-items:center;gap:16px;line-height:1.6}
.empty-state strong{margin:0}.empty-state>span{display:block;max-width:48ch}.empty-state>.acid,.empty-state>.quiet{display:inline-flex;align-items:center;justify-content:center;position:static;margin:0;text-decoration:none;max-width:100%;white-space:normal}
body:has(.overlay.open){overflow:hidden}
@media(max-width:800px){
 html{scroll-padding-top:76px}body{overflow-x:clip}
 .topbar{position:sticky;top:0;left:0;height:64px;min-height:64px;width:100%;padding:0 16px;z-index:40}
 #app .view{padding-top:0;margin-left:0;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px));min-height:calc(100dvh - 64px)}
 .topbar strong{font-size:18px}.top-actions{gap:6px}#openSearch{width:44px;min-width:44px;height:44px;min-height:44px;padding:10px}
 .rail{height:auto;min-height:66px;padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));z-index:50;background:#101318}
 .rail nav{display:flex;width:100%;min-width:0;gap:2px;overflow-x:auto;justify-content:space-around}
 .rail nav button{width:auto;flex:1 0 0;min-width:48px;padding:7px 2px;border-radius:10px}.rail nav button b{font-size:10px;line-height:1.4;white-space:nowrap}.rail nav button span{font-size:23px;line-height:1.2}.rail nav button.active:after{display:none}
 .rail nav button[data-view="market"] b{font-size:0}.rail nav button[data-view="market"] b:after{content:'Home';font-size:10px}
 #mainNav button span{font-variant-emoji:text}
 .page-wrap,#tradesView .page-wrap,#searchView .page-wrap{padding:22px 16px 28px}
 .page-title{margin:0 0 24px;gap:14px}.page-title h1{font-size:32px;margin:6px 0}.page-title .micro{display:none}
 .profile-hero{position:relative;padding:24px 16px}.profile-hero>button{position:static;margin-top:16px}.profile-hero h1{font-size:30px;line-height:1.2;overflow-wrap:anywhere}.profile-stats{margin:20px 0}
 #tradesView .trade-tabs{flex-wrap:wrap;overflow:visible;gap:5px}#tradesView .trade-tabs button{white-space:normal;flex:1 1 auto;font-size:14px;min-height:44px;padding:10px}
 .settings-grid>nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:visible}.settings-grid>nav button{padding:12px 8px;font-size:14px;white-space:normal;min-height:44px}
 .settings-card{min-width:0;padding:20px}.settings-card .empty-state{padding:28px 0}.empty-state{padding:36px 16px}.empty-state strong{font-size:23px}.empty-state>span{font-size:16px}
 #searchView .style-chips{flex-wrap:wrap;overflow:visible;gap:8px}#searchView .style-chips button{font-size:14px;padding:10px 14px;min-height:44px}.style-discovery{margin:22px 0;padding:20px 0}
 #marketView .market-main{padding:20px 16px 24px}.feed-intro{display:block;margin:0 0 24px}.feed-intro .quiet{margin-top:8px;padding:10px 14px;font-size:14px}.feed-intro h1{font-size:29px}.feed-section h2{font-size:23px}
 #marketView .feed-rail{grid-auto-columns:72%;gap:12px;margin-right:-16px;padding-right:16px}.feed-section .micro{font-size:12px}
 #marketView .product-copy h3{font-size:16px;line-height:1.4}.product-foot{flex-wrap:wrap;gap:8px}
 #closetView .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#closetView .product-image{height:auto;aspect-ratio:4/5}#closetView .product-image img{object-fit:contain;transform:none}#closetView .product-copy{padding:12px}#closetView .product-copy h3{font-size:15px}#closetView .product-foot strong{font-size:18px}
 .overlay{padding:8px;padding-top:max(8px,env(safe-area-inset-top,0px));padding-bottom:max(8px,env(safe-area-inset-bottom,0px));height:100dvh;align-items:center;overflow:hidden}
 .overlay>.trade-detail,.overlay>.review-panel,.overlay>.cash-sheet,.overlay>.case-panel,.overlay>.trade-picker{width:100%;max-height:100%;padding:60px 18px 24px;overscroll-behavior:contain;overflow:auto;min-height:0;border-radius:16px}
 .overlay .close{top:12px;right:12px;width:40px;height:40px;min-height:40px;flex-shrink:0}
 .trade-detail h2,.review-panel h2{font-size:30px;line-height:1.15;overflow-wrap:anywhere}.trade-detail .offer-side{padding:16px;min-width:0}.trade-detail .offer-sides{gap:12px}.trade-members{font-size:16px}
 .studio{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;max-height:100%;width:100%;overflow:hidden;border-radius:14px}
 .studio>header{height:auto;min-height:70px;padding:12px 16px;gap:10px}.studio>header h2{font-size:22px;padding-right:0}.studio>header .close{position:static}
 .studio-body{display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;min-height:0}
 .side-total,.side-total.partner{padding:16px;border:0}.side-total>strong{font-size:32px;margin-top:8px}.side-total>button{margin-top:12px;min-height:44px}.side-total label{margin-top:16px;font-size:14px}.side-total textarea{min-height:64px;font-size:16px}
 .side-total .preference-card{margin-top:16px}.collection-panel{overflow:visible;padding:16px;flex-shrink:0}.collection-panel h3{margin:0 0 12px}.studio .mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio .mini-card img{height:auto;aspect-ratio:4/5;object-fit:contain;transform:none}.mini-card b{font-size:14px;overflow-wrap:anywhere}
 .studio>footer{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;min-height:0;flex-shrink:0}.studio>footer>div{grid-column:1/-1;width:auto;display:flex;align-items:center;justify-content:space-between;margin:0}.studio>footer div strong{font-size:16px}.studio>footer button{min-width:0;width:100%;min-height:44px;padding:10px;font-size:14px;white-space:normal}
 .messages-shell{height:calc(100dvh - 148px - env(safe-area-inset-bottom,0px))}.toast{bottom:calc(84px + env(safe-area-inset-bottom,0px));max-width:90%;border-radius:12px}
}
/* Keep the wizard controls outside the scrolling step and inside the visible phone viewport. */
@media(max-width:800px){
 #listingOverlay{top:var(--listing-viewport-top,0px);bottom:auto;height:var(--listing-viewport-height,100dvh);padding:8px 8px max(8px,env(safe-area-inset-bottom,0px));grid-template-rows:minmax(0,1fr)}
 #listingOverlay .listing-intake{width:100%;height:100%;max-height:100%;min-height:0;grid-template-rows:auto auto minmax(0,1fr);border-radius:16px}
 #listingOverlay .listing-intake>header{padding:14px 16px;gap:12px}
 #listingOverlay .listing-intake>header h2{font-size:26px;line-height:1.15;margin:4px 0}
 #listingOverlay .listing-intake>header p{display:none}
 #listingOverlay .listing-intake>header .micro{font-size:11px}
 #listingOverlay #listingForm{min-height:0;overflow:hidden;grid-template-rows:minmax(0,1fr) auto}
 #listingOverlay .listing-step{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:20px 16px}
 #listingOverlay #listingForm>footer{position:relative;z-index:2;display:flex;flex-shrink:0;gap:10px;padding:12px;background:#0c0f12}
 #listingOverlay #listingForm>footer span{display:none}
 #listingOverlay #listingBack,#listingOverlay #listingNext{flex:1;min-width:0;min-height:48px;padding:12px;font-size:16px;touch-action:manipulation}
 #listingOverlay input,#listingOverlay select,#listingOverlay textarea{font-size:16px}
 .top-actions .notification-bell:not([hidden]){display:flex!important;align-items:center;justify-content:center;position:relative;order:1;width:44px;min-width:44px;height:44px;padding:10px!important}
 .top-actions .notification-bell[hidden],.notification-bell [data-notification-badge][hidden]{display:none!important}
 .notification-bell [data-notification-badge]:not([hidden]){position:absolute;top:-3px;right:-3px;min-width:18px;font-size:10px;line-height:14px;padding:1px 4px}
 .notification-dialog{max-height:calc(100dvh - 24px);width:calc(100vw - 24px);box-sizing:border-box}
 .notification-tools{flex-wrap:wrap}.notification-tools button,.notification-dialog [data-close]{min-height:44px}
}
