/* VTuber Places v1.1.1733 — Pass 4B mobile Marketplace workflow hardening */
.vtpMarketplaceWorkflowState {
  grid-column: 1 / -1;
  display: grid;
  justify-items: center;
  gap: 10px;
  min-height: 210px;
  padding: clamp(24px, 6vw, 44px);
  border: 1px dashed rgba(102, 67, 113, .22);
  border-radius: 26px;
  background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(250,241,249,.9));
  color: #725f79;
  text-align: center;
}
.vtpMarketplaceWorkflowState svg { width: 38px; height: 38px; color: #b54d7d; }
.vtpMarketplaceWorkflowState h2 { margin: 0; color: #49344f; font-size: clamp(22px, 4vw, 30px); letter-spacing: -.035em; }
.vtpMarketplaceWorkflowState p { max-width: 620px; margin: 0; line-height: 1.6; }
.vtpMarketplaceWorkflowState.isError { border-style: solid; border-color: rgba(190, 91, 98, .24); background: linear-gradient(145deg, #fff9fa, #fff1f4); }
.vtpMarketplaceWorkflowState.isLoading { min-height: 150px; }
.vtpMarketplaceWorkflowSpinner { width: 34px; height: 34px; border: 4px solid rgba(181,77,125,.18); border-top-color: #b54d7d; border-radius: 999px; animation: vtpMarketplaceWorkflowSpin .8s linear infinite; }
@keyframes vtpMarketplaceWorkflowSpin { to { transform: rotate(360deg); } }

.vtpMarketplaceActionStatus { min-height: 18px; color: #72537e; font-size: 12px; font-weight: 850; line-height: 1.45; }
[data-marketplace-workflow-form].isSubmitting,
.vtpOrderThreadLayout form.isSubmitting,
.vtpListingSection form.isSubmitting { pointer-events: none; }
[data-marketplace-workflow-form].isSubmitting .vtpButton,
.vtpOrderThreadLayout form.isSubmitting .vtpButton,
.vtpListingSection form.isSubmitting .vtpButton { opacity: .68; }
[data-marketplace-workflow-form].hasUnsavedMarketplaceChanges { box-shadow: 0 0 0 2px rgba(231,101,154,.15), 0 18px 48px rgba(91,60,108,.09); }

.vtpMarketplaceListingMain { position: relative; }
.vtpListingMobileActionDock { display: none; }
.vtpListingSection#request { scroll-margin-top: 110px; scroll-margin-bottom: 190px; }

.vtpEditCard[id], #new-offer, #offers-list { scroll-margin-top: 105px; }
.vtpEditCard:target, #new-offer:target { border-color: rgba(231,101,154,.58); box-shadow: 0 0 0 4px rgba(231,101,154,.12), 0 18px 52px rgba(91,60,108,.12); }
.vtpManageLoadError { grid-column: 1 / -1; }

@media (max-width: 820px) {
  .vtpMarketplaceListingMain { padding-bottom: 88px !important; }
  .vtpListingMobileActionDock {
    position: fixed;
    z-index: 6450;
    left: 50%;
    bottom: calc(84px + env(safe-area-inset-bottom));
    transform: translateX(-50%);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    width: min(620px, calc(100vw - 18px));
    min-height: 62px;
    padding: 8px 9px 8px 14px;
    border: 1px solid rgba(231,101,154,.24);
    border-radius: 21px;
    background: rgba(255,252,254,.97);
    box-shadow: 0 16px 42px rgba(72,43,86,.2);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
  }
  .vtpListingMobileActionDock strong { display: block; overflow: hidden; color: #3e2848; text-overflow: ellipsis; white-space: nowrap; }
  .vtpListingMobileActionDock small { display: block; margin-top: 2px; color: #846f8b; font-size: 11px; font-weight: 800; }
  .vtpListingMobileActionDock .vtpButton { min-width: 124px; justify-content: center; }
  .vtpListingMobileActionDock.isClosed { grid-template-columns: 1fr; text-align: center; }
  .vtpListingMobileActionDock.isClosed strong { white-space: normal; }

  .vtpOrderFilters {
    position: sticky;
    z-index: 60;
    top: 78px;
    margin-inline: -4px;
    padding: 8px 4px 10px;
    background: linear-gradient(180deg, rgba(249,244,250,.98) 74%, rgba(249,244,250,0));
    scroll-padding-inline: 8px;
  }
  .vtpOrderFilter.isActive { scroll-margin-inline: 14px; }
  .vtpOrderComposer {
    position: sticky;
    z-index: 55;
    bottom: calc(84px + env(safe-area-inset-bottom));
    box-shadow: 0 -12px 28px rgba(91,60,108,.09);
  }
}

@media (max-width: 620px) {
  .vtpOrderHero { gap: 15px; padding: 18px; }
  .vtpOrderHero h1 { font-size: clamp(32px, 12vw, 48px); }
  .vtpOrderStats {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    padding-bottom: 4px;
  }
  .vtpOrderStats::-webkit-scrollbar { display: none; }
  .vtpOrderStat { flex: 0 0 118px; scroll-snap-align: start; }
  .vtpOrderCard p { display: -webkit-box; overflow: hidden; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .vtpOrderOpen { justify-self: stretch; justify-content: center; min-height: 42px; border-radius: 14px; background: #f8edf3; }
  .vtpMarketplaceWorkflowState { min-height: 180px; border-radius: 22px; }
  .vtpListingMobileActionDock { grid-template-columns: minmax(0, 1fr) minmax(116px, auto); }
  .vtpListingMobileActionDock .vtpButton { min-width: 116px; padding-inline: 13px; }
  .vtpEditCard .vtpFormActions { gap: 8px; }
  .vtpEditCard .vtpFormActions .vtpButton,
  .vtpEditCard .vtpFormActions a.vtpButton { flex: 1 1 calc(50% - 8px); justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  .vtpMarketplaceWorkflowSpinner { animation-duration: 1.8s; }
}

.vtpMarketplaceRouteProgress {
  position: fixed;
  z-index: 9000;
  top: 0;
  left: 0;
  width: 38%;
  height: 4px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(90deg, #e7659a, #aa84ea, #82b9ff);
  box-shadow: 0 3px 12px rgba(190,72,138,.3);
  animation: vtpMarketplaceRouteProgress 1.15s ease-in-out infinite;
}
@keyframes vtpMarketplaceRouteProgress {
  0% { transform: translateX(-105%); }
  58% { transform: translateX(115vw); }
  100% { transform: translateX(115vw); }
}
@media (prefers-reduced-motion: reduce) {
  .vtpMarketplaceRouteProgress { width: 100%; animation: none; }
}

@media (max-width: 820px) {
  .vtpMarketplaceListingMain .vtpListingActions > .vtpButton.primary { display: none; }
}
.vtpOrderUploadChip.isError { color: #9f3f58; border-color: rgba(190,91,98,.22); background: #fff0f3; white-space: normal; }
