/* Unified BarterTap choices and action controls. */
.listing-contacts{display:grid;gap:10px}.listing-contact-link{justify-content:center;white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%}
.bt-select__search-wrap{position:sticky;top:-7px;z-index:1;padding:7px 0;background:var(--surface,#fff)}
.bt-select__search{box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid var(--border,#e6e8ed);border-radius:10px;padding:10px 12px;font:inherit;font-size:16px;background:var(--surface-2,#f5f6f8);color:var(--text,#191c24)}
.bt-select__search:focus-visible{outline:2px solid var(--brand,#0f8f7b);outline-offset:-2px}
.bt-select__empty{padding:16px 12px;color:var(--text-2,#667085);font-size:13px}
.bt-select__menu [hidden]{display:none!important}
:root{--bt-control-h:44px;--bt-control-radius:16px;--bt-action-radius:18px;--bt-compact-radius:14px}
:where(select,.input[type="select"]){color-scheme:light}
:where(select,select.input){appearance:none;-webkit-appearance:none;min-height:var(--bt-control-h);padding:0 42px 0 14px;border:1px solid var(--border-2,#dfe3ea);border-radius:var(--bt-control-radius);background:var(--surface,#fff);color:var(--text,#191c24);font:500 13px/1.2 Poppins,Arial,sans-serif;cursor:pointer;box-shadow:0 2px 8px rgba(15,23,42,.04);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
:where(select,select.input):hover:not(:disabled){border-color:var(--brand)}
:where(select,select.input):focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
:where(select,select.input):disabled{cursor:not-allowed;opacity:.72;background:var(--surface-2,#f4f5f8);color:var(--text-3,#7d8490)}
:where(select,select.input) option{background:var(--surface,#fff);color:var(--text,#191c24)}

/* The native select stays in the form; the visible control has a consistent menu on every OS. */
.bt-select{position:relative;display:block;width:100%;min-width:0;font:500 13px/1.2 Poppins,Arial,sans-serif}
.bt-select[data-compact="true"]{display:inline-block;width:auto;min-width:150px;vertical-align:middle}
.bt-select__native{position:absolute!important;inset:0!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}
.bt-select__trigger{position:relative;width:100%;min-width:0;min-height:var(--bt-control-h);padding:0 42px 0 14px;border:1px solid var(--border-2,#dfe3ea);border-radius:var(--bt-control-radius);background:var(--surface,#fff);color:var(--text,#191c24);display:flex;align-items:center;gap:10px;text-align:left;font:inherit;cursor:pointer;box-shadow:0 2px 8px rgba(15,23,42,.04);transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease,transform .18s ease}
.bt-select__trigger::after{content:"";position:absolute;right:14px;top:50%;margin-top:-6px;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.58;transition:transform .18s ease}
.bt-select.is-open .bt-select__trigger::after{transform:rotate(225deg) translate(-2px,-2px)}
.bt-select__trigger:hover:not(:disabled){border-color:var(--brand);background:var(--surface-2,#f7f8fa)}
.bt-select__trigger:focus-visible,.bt-select.is-open .bt-select__trigger{outline:0;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}
.bt-select__trigger:disabled{cursor:not-allowed;opacity:.72;background:var(--surface-2,#f4f5f8);color:var(--text-3,#7d8490)}
.bt-select__value{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bt-select__menu{position:fixed;z-index:10040;display:none;max-height:min(320px,48vh);overflow:auto;padding:7px;border:1px solid var(--border,#e6e8ed);border-radius:16px;background:var(--surface,#fff);color:var(--text,#191c24);box-shadow:0 22px 60px rgba(16,24,40,.22);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:color-mix(in srgb,var(--brand,#0f8f7b) 62%,transparent) transparent;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.bt-select__menu.is-open{display:block;animation:btSelectIn .16s ease-out}
.bt-select__option{width:100%;min-height:42px;padding:9px 38px 9px 12px;border:0;border-radius:11px;background:transparent;color:var(--text,#191c24);display:flex;align-items:center;text-align:left;font:500 12.5px/1.35 Poppins,Arial,sans-serif;cursor:pointer;position:relative}
.bt-select__option:hover,.bt-select__option.is-active{background:var(--brand-soft);color:var(--brand)}
.bt-select__option[aria-selected="true"]{background:var(--brand-soft);color:var(--brand);font-weight:700}
.bt-select__option[aria-selected="true"]::after{content:"✓";position:absolute;right:13px;color:var(--brand);font-weight:800}
.bt-select__option:disabled{opacity:.48;cursor:not-allowed;background:transparent;color:var(--text-3)}
.bt-select__group{padding:9px 11px 5px;color:var(--text-3,#7d8490);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
@keyframes btSelectIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

:where(html,.drawer-body,.bt-create-dialog){scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--brand,#0f8f7b) 58%,transparent) transparent}
:where(.drawer-body,.bt-create-dialog){scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain}
:where(html,.bt-select__menu,.drawer-body,.bt-create-dialog)::-webkit-scrollbar{width:8px;height:8px}
:where(html,.bt-select__menu,.drawer-body,.bt-create-dialog)::-webkit-scrollbar-track{background:transparent}
:where(html,.bt-select__menu,.drawer-body,.bt-create-dialog)::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:color-mix(in srgb,var(--brand,#0f8f7b) 62%,transparent);background-clip:padding-box}
:where(html,.bt-select__menu,.drawer-body,.bt-create-dialog)::-webkit-scrollbar-thumb:hover{background:var(--brand,#0f8f7b);background-clip:padding-box}

/* Stable button hierarchy shared by public, customer and admin surfaces. */
:where(.btn,.btn-auth,.public-auth-btn,.store-btn,.foot-btn,.add-more,.cur-opt,.gbtn,.wabtn,.back-r,.info-create,.bt-assistant__action,.by-more-filters,input[type="submit"],input[type="button"]){max-width:100%;min-width:0;min-height:44px;border-radius:var(--bt-action-radius)!important;align-items:center;justify-content:center;text-decoration:none;white-space:normal;text-align:center;overflow-wrap:anywhere;line-height:1.25;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}
:where(.btn,.btn-auth,.public-auth-btn,.store-btn,.foot-btn,.add-more,.cur-opt,.gbtn,.wabtn,.back-r,.info-create,.bt-assistant__action,.by-more-filters,input[type="submit"],input[type="button"]):not(:disabled):active{transform:translateY(1px)}
:where(.btn,.btn-auth,.public-auth-btn,.store-btn,.foot-btn,.add-more,.cur-opt,.gbtn,.wabtn,.back-r,.info-create,.bt-assistant__action,.by-more-filters)>svg{flex:0 0 auto}
:where(.round-btn){max-width:100%;min-width:0;min-height:40px;align-items:center;justify-content:center;text-decoration:none;text-align:center;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}
:where(.round-btn):not(:disabled):active{transform:translateY(1px)}
:where(.tabs button,.seg button,.fchip,.pg,.bt-select__option,.pref-option,.bt-theme-choice){border-radius:var(--bt-compact-radius)!important}
:where(.page-actions,.row-actions,.modal-actions,.actions,.by-listing-actions,.form-foot){align-items:center}
:where(.page-actions,.modal-actions,.actions,.by-listing-actions,.form-foot) :where(.btn,.btn-auth,.public-auth-btn,.store-btn,.foot-btn){justify-content:center}
.auth .btn-auth,.auth .gbtn,.auth .wabtn{height:52px!important;min-height:52px!important}
.auth-providers>*{width:100%;min-width:0}
.appbar>div:last-child{display:grid!important;grid-template-columns:repeat(2,minmax(210px,1fr));gap:11px!important;align-items:stretch}
.appbar .store-btn,.foot .store-btn{display:grid!important;grid-template-columns:24px minmax(0,1fr) 24px;column-gap:9px;align-items:center;text-align:center}
.foot .store-btn{padding-inline:18px!important}
.appbar .store-btn>svg,.foot .store-btn>svg{width:20px;height:20px;justify-self:center}
.foot-cols>div:nth-child(3){display:grid;gap:10px;align-content:start;min-width:220px}
.foot-cols>div:nth-child(3) .store-btn{width:100%;margin:0!important}
.grid>:where(.card,.step-box,.info-card),.info-grid>*,#home-cats>.cat-tile,#home-vip>.by-card,#search-grid>.by-card,.by-subcategory-grid>*{height:100%}
:where(.btn,.public-auth-btn,.store-btn,.foot-btn,.round-btn,.add-more,.cur-opt,.icon-btn,.nav-item,.tabs button,.seg button,.pg,.fchip):focus-visible{outline:3px solid var(--brand-soft);outline-offset:2px}
:where(.btn,.public-auth-btn,.store-btn,.foot-btn,.round-btn,.add-more,.cur-opt,.icon-btn):disabled{opacity:.62;cursor:not-allowed;filter:saturate(.55);box-shadow:none!important}
.icon-btn{flex:0 0 auto;display:inline-grid;place-items:center}
.nav-item{min-height:42px;border:1px solid transparent!important}
.nav-item:hover{border-color:var(--border)!important}
.nav-item.active{border-color:color-mix(in srgb,var(--brand) 24%,transparent)!important}
.tabs button,.seg button,.fchip,.pg{min-height:40px;line-height:1.2}

/* High-contrast app/footer actions replace the pale prototype buttons. */
.appbar .store-btn{min-height:48px!important;padding:10px 17px!important;border:1px solid transparent!important;background:linear-gradient(100deg,var(--brand),var(--brand-d))!important;color:#fff!important;font-weight:700!important;box-shadow:0 9px 24px rgba(var(--brand-rgb),.26)}
.appbar .store-btn:first-child{background:var(--surface)!important;border-color:var(--brand)!important;color:var(--brand)!important;box-shadow:0 7px 20px rgba(16,24,40,.09)}
.foot .store-btn{min-height:46px!important;border:1px solid #343a45!important;background:#171b22!important;color:#fff!important;font-weight:600!important;box-shadow:none}
.foot .store-btn:hover{border-color:var(--brand)!important;background:#202630!important;color:#fff!important}
.foot-btn{display:inline-flex!important;border:1px solid rgba(255,255,255,.28)!important;background:#fff!important;color:#121720!important;font-weight:700!important}
.foot-btn.alt{background:transparent!important;color:#fff!important}

html[data-theme="dark"] :where(select,select.input){color-scheme:dark;background:var(--surface-2)!important;border-color:var(--border-2)!important;color:var(--text)!important}
html[data-theme="dark"] :where(select,select.input) option{background:var(--surface-2);color:var(--text)}
html[data-theme="dark"] .bt-select__trigger,html[data-theme="dark"] .bt-select__menu{background:var(--surface-2);border-color:var(--border-2);color:var(--text)}
html[data-theme="dark"] .bt-select__option{color:var(--text)}
html[data-theme="dark"] .appbar .store-btn:first-child{background:var(--surface-2)!important;color:var(--brand)!important}

@media(max-width:640px){
  :root{--bt-control-h:46px}
  :where(select,select.input),.bt-select,.bt-select[data-compact="true"]{width:100%!important;min-width:0}
  .bt-select__menu{max-height:min(300px,52vh)}
  .appbar .store-btn,.foot .store-btn,.foot-btn{width:100%;justify-content:center}
  :where(.btn,.btn-auth,.public-auth-btn,.store-btn,.foot-btn,.add-more,.cur-opt,.gbtn,.wabtn,.back-r,.info-create,.bt-assistant__action,.by-more-filters,input[type="submit"],input[type="button"]){min-height:46px;padding-inline:16px}
  .appbar>div:last-child{grid-template-columns:minmax(0,1fr);width:100%}
  .foot-cols>div:nth-child(3){width:100%;max-width:280px;min-width:0;margin-inline:auto}
  :where(.page-actions,.modal-actions,.actions,.by-listing-actions,.form-foot){gap:8px!important}
}
@media(prefers-reduced-motion:reduce){.bt-select__menu.is-open{animation:none}.bt-select__trigger,:where(.btn,.public-auth-btn,.store-btn,.foot-btn){transition:none}}

/* Symmetric selection system shared by public, customer, create and admin pages. */
:root{--bt-choice-height:42px;--bt-choice-min-width:112px;--bt-choice-gap:8px}
:where(.tabs,.seg){display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(max-content,1fr);align-items:stretch;gap:var(--bt-choice-gap)!important;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
:where(.tabs,.seg)>button{box-sizing:border-box;width:100%;height:var(--bt-choice-height);min-height:var(--bt-choice-height)!important;padding:0 14px!important;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center;line-height:1.2;white-space:nowrap}
:where(.tabs,.seg)>button :where(.cnt,.tag){flex:0 0 auto}
.seg{width:min(100%,520px)}
#who-seg,#cycle-seg{width:min(100%,420px);margin-inline:auto}
:where(.ptabs,.by-image-tabs,.by-barter-conditions,.by-market-tabs,.by-subcategory-grid){align-items:stretch;grid-auto-rows:1fr}
:where(.ptab,.by-image-tabs>button,.by-barter-conditions>button,.by-market-tab,.by-subcategory-choice){box-sizing:border-box;width:100%;height:100%}
.billing-switch{display:inline-grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,360px);align-items:stretch}
.billing-switch>button{width:100%;min-height:36px;height:36px;padding-inline:12px!important;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.billing-period{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,260px);align-items:stretch}
.billing-period>button{width:100%;min-height:36px;height:36px;padding-inline:10px!important;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.customer-profile-tabs{align-items:stretch}.customer-profile-tab{flex:1 0 144px;min-height:48px;height:48px;padding:0 13px;text-align:center}
.customer-profile-settings-nav{align-items:stretch;max-width:100%;min-width:0;gap:8px;padding:4px 2px 8px;scroll-padding-inline:2px;overscroll-behavior-x:contain}
.customer-profile-settings-nav>button{flex:0 0 auto;width:max-content;min-width:max-content;max-width:none;min-height:44px;height:auto;padding:10px 16px;display:inline-flex;gap:8px;justify-content:center;text-align:center;white-space:nowrap;overflow-wrap:normal;scroll-snap-align:start}
:where(.btn,.customer-profile-tab,.customer-profile-action,.tab,.seg>button)>svg{flex-shrink:0}
/* Portaled action menus cannot be clipped by card stacking contexts or hover transforms. */
.dashboard-listing-menu.bt-action-menu{position:fixed;z-index:10045;inset:auto;box-sizing:border-box;margin:0;display:grid;width:220px;min-width:0;gap:4px;padding:8px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 16px 42px rgba(16,24,40,.2);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.dashboard-listing-menu.bt-action-menu .btn{min-height:44px;height:auto;width:100%;padding:10px 12px!important;justify-content:flex-start;text-align:left;white-space:normal;overflow-wrap:break-word;line-height:1.35}
.dashboard-listing-actions summary{touch-action:manipulation;min-width:44px;min-height:44px}
.mini-steps>.mini{min-height:58px;align-self:stretch}
.rolecard{min-height:104px}
.radio-card{min-height:82px;align-self:stretch}

@media(max-width:640px){
  :root{--bt-choice-min-width:112px;--bt-choice-gap:7px}
  :where(.tabs,.seg){overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity}
  :where(.tabs,.seg)::-webkit-scrollbar{display:none}
  :where(.tabs,.seg)>button{scroll-snap-align:start;height:44px;min-height:44px!important;padding-inline:12px!important}
  .seg{width:100%;max-width:100%!important}
  .billing-switch,.billing-period{width:100%;max-width:100%}
  .customer-profile-tab{flex-basis:136px}
  .customer-profile-settings-nav>button{flex-basis:auto}
  .rolecard{min-height:92px}
  .radio-card{min-height:76px}
}
