/* Scoped additions; existing public theme and assets are not changed. */
#authModal.customer-consent-active #authTerms { display:none; }
#customerAuthConsent { margin:18px 0; }
#customerAuthConsent .customer-consent-label { display:flex; align-items:flex-start; gap:10px; font-size:12px; line-height:1.6; color:inherit; }
#customerAuthConsent input { flex:0 0 auto; width:17px; height:17px; margin:3px 0 0; accent-color:var(--accent,#bafa42); }
#customerAuthConsent a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.inventory-main.customer-filter-layout { display:grid; grid-template-columns:170px minmax(0,1fr); column-gap:20px; align-content:start; }
.inventory-main.customer-filter-layout > :not(#customerMarketFilters) { grid-column:2; min-width:0; }
#customerMarketFilters { grid-column:1; grid-row:1 / span 14; padding:16px 14px; border:1px solid currentColor; border-color:color-mix(in srgb,currentColor 14%,transparent); border-radius:12px; align-self:start; font-size:13px; }
#customerMarketFilters summary { font-weight:650; cursor:pointer; }
#customerMarketFilters .customer-filter-fields { display:grid; gap:16px; padding-top:18px; }
#customerMarketFilters .form-label { margin:0; font-size:12px; }
#customerMarketFilters select, #customerMarketFilters input { min-width:0; width:100%; min-height:38px; padding:9px 8px; box-sizing:border-box; border-radius:7px; font:inherit; color:inherit; background:transparent; border:1px solid color-mix(in srgb,currentColor 18%,transparent); }
#customerMarketFilters select option { color:CanvasText; background:Canvas; }
#customerMarketFilters fieldset { padding:0; margin:0; border:0; min-width:0; }
#customerMarketFilters legend { margin-bottom:7px; font-size:12px; }
#customerMarketFilters .customer-price-range { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
#customerMarketFilters .form-hint { margin:0; font-size:11px; line-height:1.5; }
#customerMarketFilters .text-link { text-align:left; font-size:12px; }
#inventoryGrid .item-card-wrapper[hidden] { display:none !important; }
#kycProfileIntegration .customer-kyc-details { margin:12px 0; font-size:12px; }
#kycProfileIntegration .customer-kyc-details summary { cursor:pointer; }
#externalPayoutMethod { margin:14px 0; }
#externalPayoutModal .customer-payout-timing { border:0; margin:20px 0; padding:0; }
#externalPayoutModal .customer-payout-timing legend { font-size:13px; font-weight:600; margin-bottom:10px; }
#externalPayoutModal .customer-payout-timing label { display:flex; gap:10px; align-items:flex-start; padding:12px 0; cursor:pointer; }
#externalPayoutModal .customer-payout-timing input { flex:0 0 auto; width:16px; height:16px; margin:3px 0 0; accent-color:var(--accent,#bafa42); }
#externalPayoutModal .customer-payout-timing strong, #externalPayoutModal .customer-payout-timing small { display:block; }
#externalPayoutModal .customer-payout-timing small { font-size:12px; line-height:1.5; margin-top:4px; opacity:.75; }
#externalPayoutModal .customer-timing-unavailable { opacity:.6; cursor:default; }
.customer-kyc-checkout { margin:18px 0; padding:17px; border:1px solid #48665b; border-radius:11px; background:linear-gradient(145deg,#20362e,#192a25); color:#d8eee4; }
.customer-kyc-checkout[hidden] { display:none !important; }
.customer-kyc-checkout-heading { display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:14px; }
.customer-kyc-checkout-badge { border:1px solid #709b87; border-radius:5px; padding:3px 6px; color:#b5e3cb; font-size:10px; letter-spacing:.07em; }
.customer-kyc-checkout p { margin:11px 0; font-size:12px; line-height:1.65; color:#a1beb0; }
.customer-kyc-checkout dl { margin:14px 0; font-size:12px; }
.customer-kyc-checkout dl>div { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:9px 0; }
.customer-kyc-checkout dt { color:#acc4b8; }.customer-kyc-checkout dd { margin:0; color:#e1f6e9; font-size:15px; font-weight:600; text-align:right; }
.customer-kyc-checkout .button { display:flex; width:100%; min-height:43px; margin-top:13px; padding:11px 10px; box-sizing:border-box; justify-content:center; font-size:13px; text-align:center; text-decoration:none; }
.customer-kyc-checkout-terms { display:block; margin-top:10px; text-align:center; font-size:12px; color:#c1decf; }
.customer-kyc-anchor,#kycProfileIntegration { scroll-margin-top:100px; }
#kycProfileStart.customer-kyc-highlight { outline:2px solid #a4e4c7; outline-offset:5px; box-shadow:0 0 0 8px #a4e4c710; }
#infoContent .customer-item-info-unavailable { padding:13px 15px; margin:0 0 18px; border:1px solid #76828c40; border-radius:9px; color:#b3bfc7; background:#7c8b9810; font-size:14px; line-height:1.7; }
@media (max-width:1100px) {
  .inventory-main.customer-filter-layout { display:block; }
  #customerMarketFilters { margin-bottom:16px; padding:12px 14px; }
  #customerMarketFilters .customer-filter-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:520px) {
  #customerMarketFilters .customer-filter-fields { grid-template-columns:1fr 1fr; gap:12px; }
  #customerMarketFilters .form-hint { grid-column:1 / -1; }
}

#customerAuthConsent .customer-consent-label + .customer-consent-label { margin-top:12px; }
#customerAuthConsent .customer-consent-notice { margin:10px 0 0; font-size:12px; line-height:1.6; opacity:.85; }

/* Reasons stay readable outside the existing disabled/gray item button. */
#inventoryGrid .item-card-wrapper.customer-item-with-availability { display:flex; flex-direction:column; }
#inventoryGrid .item-card-wrapper.customer-item-with-availability .item-card { height:auto; flex:1 1 auto; }
#inventoryGrid .customer-item-availability { min-width:0; margin-top:8px; padding:10px 11px; border:1px solid #7786a04d; border-radius:9px; background:#202c42; color:#dbe3ef; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
#inventoryGrid .customer-item-availability strong { display:block; color:#e6ebf5; font-size:12px; line-height:1.5; font-weight:600; margin:0 0 4px; }
#inventoryGrid .customer-item-availability>span { display:block; color:#c7d1e1; }
@media(max-width:760px) {
  #inventoryGrid .customer-item-availability { padding:9px; font-size:11px; }
  #inventoryGrid .customer-item-availability strong { font-size:11px; }
}
