/* Toura Passport STAGING 016X6I — Guest Aesthetics + Structure, Pass 2.
   Presentation only. Refines public secondary surfaces and responsive parity.
   No routing, auth, World, menu, rail-lock, Marketplace data, Community data,
   or signed-in application mechanics are changed. */

:root{
  --tp016x6i-line:#e1e9e4;
  --tp016x6i-ink:#173247;
  --tp016x6i-muted:#6d7e77;
  --tp016x6i-green:#2c8f5b;
  --tp016x6i-soft:#f7faf8;
  --tp016x6i-shadow:0 12px 32px rgba(17,52,67,.065);
}

/* Shared surface finish: Community + Marketplace should read as one product family. */
body.rewards-page .market-intro,
body.rewards-page .market-business,
body.rewards-page .market-discovery,
body.community-page .welcome,
body.community-page .happening,
body.community-page .activity-stage,
body.community-page .people-section{
  border-color:var(--tp016x6i-line)!important;
  box-shadow:var(--tp016x6i-shadow)!important;
}

body.rewards-page .reward-no-results,
body.community-page .empty-state,
body.community-page .empty{
  border:1px dashed #cfdcd4!important;
  background:linear-gradient(180deg,#fbfdfc,#f6faf7)!important;
  color:var(--tp016x6i-muted)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
body.rewards-page .reward-no-results{
  min-height:118px!important;
  display:grid!important;
  place-items:center!important;
  padding:26px 20px!important;
  border-radius:18px!important;
  line-height:1.5!important;
}
body.community-page .empty-state,
body.community-page .empty{
  min-height:112px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  border-radius:18px!important;
}

/* Tablet / compact desktop parity without replacing the existing desktop shell. */
@media (min-width:761px) and (max-width:1099px){
  body.rewards-page .market-shell,
  body.community-page .main{
    width:min(1180px,calc(100% - 32px))!important;
  }
  body.rewards-page .market-intro,
  body.rewards-page .market-business,
  body.rewards-page .market-discovery,
  body.community-page .welcome,
  body.community-page .happening,
  body.community-page .activity-stage,
  body.community-page .people-section{
    border-radius:22px!important;
  }
  body.community-page .hero-grid{gap:16px!important}
  body.community-page .activity-stage,
  body.community-page .people-section{margin-top:18px!important}
  body.rewards-page .market-hero-v395{gap:16px!important}
  body.rewards-page .market-stick-sentinel{margin-top:16px!important}

  /* Auth/gateway already center correctly on desktop; match the new visual density at tablet widths. */
  body.tp012a-member-route #login .passport-auth-copy,
  body.tp012a-member-route #passportGateway .passport-reveal-copy{
    width:min(100%,456px)!important;
    border-color:var(--tp016x6i-line)!important;
    box-shadow:0 16px 42px rgba(17,52,67,.07)!important;
  }
}

@media (max-width:760px){
  /* Community: compact the hierarchy, not the content. */
  html.tp016x6-guest body.community-page .main{
    width:min(100% - 24px,1180px)!important;
    padding-top:16px!important;
    padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
  }
  html.tp016x6-guest body.community-page .hero-grid{gap:12px!important}
  html.tp016x6-guest body.community-page .welcome,
  html.tp016x6-guest body.community-page .happening,
  html.tp016x6-guest body.community-page .activity-stage,
  html.tp016x6-guest body.community-page .people-section{
    border-radius:20px!important;
  }
  html.tp016x6-guest body.community-page .welcome{padding:22px 20px!important}
  html.tp016x6-guest body.community-page .welcome h1{
    margin-top:7px!important;
    font-size:29px!important;
    letter-spacing:-.025em!important;
  }
  html.tp016x6-guest body.community-page .welcome>p{
    font-size:13px!important;
    line-height:1.5!important;
  }
  html.tp016x6-guest body.community-page .member-stat{
    min-height:128px!important;
    margin-top:20px!important;
    padding:18px 19px!important;
    border-radius:17px!important;
  }
  html.tp016x6-guest body.community-page .member-stat .number{font-size:46px!important}
  html.tp016x6-guest body.community-page .happening{padding:20px!important}
  html.tp016x6-guest body.community-page .happening-head{margin-bottom:12px!important}
  html.tp016x6-guest body.community-page .happening h2{font-size:22px!important}
  html.tp016x6-guest body.community-page .activity-choices{gap:10px!important}
  html.tp016x6-guest body.community-page .activity-choice{
    min-height:168px!important;
    border-radius:16px!important;
  }
  html.tp016x6-guest body.community-page .activity-stage,
  html.tp016x6-guest body.community-page .people-section{
    margin-top:14px!important;
    padding:20px!important;
  }
  html.tp016x6-guest body.community-page .stage-head h2,
  html.tp016x6-guest body.community-page .people-head h2{font-size:23px!important}
  html.tp016x6-guest body.community-page .partner-update-card,
  html.tp016x6-guest body.community-page .marketplace-update-card,
  html.tp016x6-guest body.community-page .story-card,
  html.tp016x6-guest body.community-page .explorer-card{
    border-color:var(--tp016x6i-line)!important;
    border-radius:16px!important;
    box-shadow:0 7px 20px rgba(17,52,67,.035)!important;
  }
  html.tp016x6-guest body.community-page .empty-state,
  html.tp016x6-guest body.community-page .empty{
    min-height:104px!important;
    padding:22px 18px!important;
    text-align:center!important;
  }

  /* Marketplace: keep the accepted catalog mechanics, refine its public-card rhythm. */
  html.tp016x6-guest body.rewards-page .market-shell{
    width:min(100% - 24px,1180px)!important;
    padding-top:16px!important;
    padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
  }
  html.tp016x6-guest body.rewards-page .market-hero-v395{gap:12px!important}
  html.tp016x6-guest body.rewards-page .market-intro,
  html.tp016x6-guest body.rewards-page .market-business,
  html.tp016x6-guest body.rewards-page .market-discovery{
    border-radius:20px!important;
  }
  html.tp016x6-guest body.rewards-page .market-intro-v395{padding:24px!important}
  html.tp016x6-guest body.rewards-page .market-intro-v395 h1{
    letter-spacing:-.03em!important;
    line-height:1.02!important;
  }
  html.tp016x6-guest body.rewards-page .market-business-v395{padding:22px!important}
  html.tp016x6-guest body.rewards-page .market-listing-stat{border-radius:15px!important}
  html.tp016x6-guest body.rewards-page .market-explore-jump{font-size:10px!important}
  html.tp016x6-guest body.rewards-page .market-stick-sentinel{margin-top:14px!important}
  html.tp016x6-guest body.rewards-page .market-discovery-v395,
  html.tp016x6-guest body.rewards-page .market-discovery-v395.is-stuck{
    padding:17px!important;
    border-radius:18px!important;
  }
  html.tp016x6-guest body.rewards-page .reward-no-results{
    min-height:104px!important;
    padding:22px 18px!important;
    border-radius:16px!important;
  }

  /* Current-route cue inside the already-approved guest hamburger. */
  html.tp016x6-guest body.rewards-page .tp011i-app-menu a[href="/rewards/"],
  html.tp016x6-guest body.community-page .tp011i-app-menu a[href="/community/"],
  html.tp016x6-guest body.tp012a-member-route .tp011i-app-menu a[href="/member/"]{
    background:#edf6f0!important;
    color:#1f704a!important;
    font-weight:880!important;
  }

  /* My Passport / auth: preserve X6H geometry, make the supporting copy feel identical to the public surfaces. */
  html.tp016x6-guest body.tp012a-member-route #login .passport-auth-copy,
  html.tp016x6-guest body.tp012a-member-route #passportGateway .passport-reveal-copy{
    border-color:var(--tp016x6i-line)!important;
    box-shadow:var(--tp016x6i-shadow)!important;
  }
  html.tp016x6-guest body.tp012a-member-route #login .member-auth-subtitle,
  html.tp016x6-guest body.tp012a-member-route #passportGateway .passport-reveal-copy>p{
    color:var(--tp016x6i-muted)!important;
  }
  html.tp016x6-guest body.tp012a-member-route #login .passport-auth-free{
    border-color:#dfeae3!important;
    background:#f5faf7!important;
    color:#4f6d60!important;
  }
}

@media (max-width:390px){
  html.tp016x6-guest body.community-page .welcome,
  html.tp016x6-guest body.community-page .happening,
  html.tp016x6-guest body.community-page .activity-stage,
  html.tp016x6-guest body.community-page .people-section,
  html.tp016x6-guest body.rewards-page .market-intro-v395,
  html.tp016x6-guest body.rewards-page .market-business-v395{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}
