/* Toura Passport Mobile Marketplace Catalog Prototype 006X
   STAGING visual-volume pass only. Front-end placeholder catalog; no backend writes. */
@media (max-width:760px){
  body.tp-market-catalog-prototype{
    --tp-ink:#173247;--tp-green:#24784f;--tp-green2:#2c9560;--tp-soft:#6d7d77;
    --tp-line:#dce7df;--tp-bg:#f5f8f6;--tp-card:#fff;--tp-gold:#b99142;
    background:var(--tp-bg)!important;color:var(--tp-ink)!important;
  }
  body.tp-market-catalog-prototype .market-shell,
  body.tp-market-catalog-prototype .tp-universal-footer,
  body.tp-market-catalog-prototype #rewardDetail{display:none!important}

  /* Restore the accepted compact Member shell contract on Marketplace mobile. */
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"]{
    position:sticky!important;top:0!important;z-index:2050!important;height:58px!important;min-height:58px!important;
    padding:0 15px!important;background:rgba(255,255,255,.98)!important;border-bottom:1px solid var(--tp-line)!important;
    display:flex!important;align-items:center!important;gap:8px!important;backdrop-filter:blur(16px)!important;
  }
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand{
    display:flex!important;align-items:center!important;min-width:0!important;text-decoration:none!important;
  }
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy{
    display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;
  }
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy strong{
    display:flex!important;gap:4px!important;align-items:center!important;font-size:12px!important;line-height:1!important;
    letter-spacing:.1em!important;color:#18384b!important;white-space:nowrap!important;
  }
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy strong b{color:#2c8c5a!important}
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy small,
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-links,
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-account{display:none!important}
  body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy:after{
    content:"| MARKETPLACE";font-size:9px!important;line-height:1!important;letter-spacing:.14em!important;font-weight:800!important;
    color:#7b8983!important;border-left:1px solid #d9dfdc!important;padding-left:8px!important;white-space:nowrap!important;
  }

  .tp-market-prototype{width:100%;padding:0 0 calc(94px + env(safe-area-inset-bottom));background:var(--tp-bg);min-height:100vh}
  .tp-market-prototype *{box-sizing:border-box}
  .tp-proto-top{position:relative;background:#fff;padding:13px 14px 10px;border-bottom:1px solid #e4ebe6}
  .tp-proto-status{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:8px;font-weight:900;letter-spacing:.11em;color:#819087;text-transform:uppercase}
  .tp-proto-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#d3ae59}
  .tp-proto-search-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;align-items:center}
  .tp-proto-search{position:relative}
  .tp-proto-search:before{content:"⌕";position:absolute;left:13px;top:50%;transform:translateY(-52%);font-size:20px;color:#64766e;z-index:1}
  .tp-proto-search input{width:100%;height:45px;border:1px solid #cadbd0;border-radius:14px;background:#f9fbfa;padding:0 39px 0 39px;color:var(--tp-ink);font-size:13px;outline:0;box-shadow:inset 0 1px 0 #fff}
  .tp-proto-search input:focus{border-color:#7bb394;background:#fff;box-shadow:0 0 0 3px rgba(44,149,96,.09)}
  .tp-proto-search .tp-search-clear{position:absolute;right:7px;top:7px;width:31px;height:31px;border:0;background:transparent;color:#788a81;font-size:18px;border-radius:50%;display:none}
  .tp-proto-search.has-value .tp-search-clear{display:block}
  .tp-proto-saved{height:42px;width:42px;border:1px solid #d5e1d9;background:#fff;border-radius:13px;color:#315b49;font-size:20px;display:grid;place-items:center;padding:0}

  .tp-family-rail,.tp-category-rail,.tp-active-filters,.tp-destination-rail{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .tp-family-rail::-webkit-scrollbar,.tp-category-rail::-webkit-scrollbar,.tp-active-filters::-webkit-scrollbar,.tp-destination-rail::-webkit-scrollbar{display:none}
  .tp-family-rail{padding:11px 14px 4px;background:#fff}
  .tp-family-pill{flex:0 0 auto;border:1px solid #d8e4dc;background:#fff;color:#53685f;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:850;white-space:nowrap}
  .tp-family-pill.active{background:#173247;color:#fff;border-color:#173247;box-shadow:0 5px 12px rgba(23,50,71,.13)}
  .tp-category-wrap{padding:6px 14px 10px;background:#fff;border-bottom:1px solid #e5ece7}
  .tp-category-pill{flex:0 0 auto;border:0;background:#eef5f0;color:#456256;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800;white-space:nowrap}
  .tp-category-pill.active{background:#dceee2;color:#1f6f49;box-shadow:inset 0 0 0 1px #bcd8c6}

  .tp-proto-context{padding:10px 14px;background:rgba(245,248,246,.97);border-bottom:1px solid #e1e8e3;position:sticky;top:58px;z-index:1200;backdrop-filter:blur(14px)}
  .tp-context-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center}
  .tp-location-select,.tp-filter-button,.tp-sort-select{height:37px;border:1px solid #d4e1d8;background:#fff;color:#405d50;border-radius:11px;font-size:10px;font-weight:800}
  .tp-location-select{width:100%;padding:0 9px;min-width:0}
  .tp-filter-button{padding:0 12px;white-space:nowrap}.tp-filter-button.has-filter{border-color:#78ad8d;background:#edf7f0;color:#1f6f49}
  .tp-sort-select{width:78px;padding:0 6px}
  .tp-active-filters{margin-top:7px;min-height:0}.tp-active-filters:empty{display:none}
  .tp-filter-chip{flex:0 0 auto;border:1px solid #bfd8c8;background:#edf7f0;color:#276848;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:850;white-space:nowrap}

  .tp-proto-discovery{padding:13px 0 6px;background:linear-gradient(180deg,#f5f8f6,#f1f6f2)}
  .tp-section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;padding:0 14px 9px}
  .tp-section-head div>span{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;color:#84928b;text-transform:uppercase;margin-bottom:2px}
  .tp-section-head h2{font-size:17px;line-height:1.1;margin:0;color:#173247;letter-spacing:-.02em}.tp-section-head button{border:0;background:none;padding:5px;color:#27734f;font-size:9px;font-weight:850}
  .tp-discovery-rail{display:flex;gap:10px;overflow-x:auto;padding:0 14px 9px;scroll-snap-type:x proximity;scrollbar-width:none}.tp-discovery-rail::-webkit-scrollbar{display:none}
  .tp-discovery-card{scroll-snap-align:start;flex:0 0 72%;border-radius:17px;overflow:hidden;background:#fff;border:1px solid #dbe6df;box-shadow:0 7px 20px rgba(23,50,71,.07)}
  .tp-discovery-card .tp-card-media{aspect-ratio:16/10}.tp-discovery-card .tp-card-body{padding:10px 11px 11px}

  .tp-results{padding:10px 10px 0}
  .tp-results-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px 9px}
  .tp-results-head div>span{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;color:#839189;text-transform:uppercase}
  .tp-results-head strong{display:block;font-size:15px;color:#173247;margin-top:1px}.tp-results-head small{font-size:9px;color:#7c8c84}
  .tp-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;align-items:start}
  .tp-catalog-card{min-width:0;background:#fff;border:1px solid #dbe5df;border-radius:15px;overflow:hidden;box-shadow:0 6px 15px rgba(23,50,71,.06)}
  .tp-catalog-card.featured{grid-column:1/-1}.tp-catalog-card.featured .tp-card-media{aspect-ratio:16/8.6}.tp-catalog-card.featured .tp-card-body{padding:11px 12px 12px}
  .tp-card-media{position:relative;aspect-ratio:1/1;overflow:hidden;background:#e5ece7}.tp-card-media img{width:100%;height:100%;display:block;object-fit:cover}
  .tp-catalog-card.family-experiences:not(.featured) .tp-card-media{aspect-ratio:4/3}.tp-catalog-card.family-products .tp-card-media{aspect-ratio:1/1}.tp-catalog-card.family-services .tp-card-media{aspect-ratio:6/5}.tp-catalog-card.family-stays:not(.featured) .tp-card-media{aspect-ratio:4/3}.tp-catalog-card.family-transportation .tp-card-media{aspect-ratio:16/10}
  .tp-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(4,25,35,.32) 100%);pointer-events:none}
  .tp-card-family{position:absolute;left:7px;top:7px;z-index:2;padding:4px 6px;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);font-size:7px;font-weight:950;letter-spacing:.06em;color:#37584a;text-transform:uppercase}
  .tp-card-save{position:absolute;right:7px;top:7px;z-index:2;width:27px;height:27px;border:0;border-radius:50%;background:rgba(255,255,255,.94);color:#244f3d;font-size:16px;display:grid;place-items:center;padding:0}
  .tp-card-body{padding:9px}.tp-card-title{font-size:12px;line-height:1.2;font-weight:900;color:#173247;margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .tp-card-supplier{font-size:8px;line-height:1.25;font-weight:760;color:#577066;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-card-place{font-size:8px;color:#84918b;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .tp-card-fact{margin-top:7px;padding-top:6px;border-top:1px solid #edf1ee;font-size:8px;font-weight:750;color:#61756b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .tp-card-price{display:flex;align-items:end;justify-content:space-between;gap:6px;margin-top:7px}.tp-card-price b{font-size:11px;color:#173247}.tp-card-price span{font-size:8px;font-weight:900;color:#a27827;white-space:nowrap}
  .tp-card-placeholder-note{font-size:7px;color:#97a39d;margin-top:5px;letter-spacing:.04em}

  .tp-no-results{grid-column:1/-1;padding:44px 18px;text-align:center;background:#fff;border:1px dashed #cfdcd3;border-radius:15px;color:#61736b}.tp-no-results strong{display:block;color:#173247;margin-bottom:5px}

  .tp-filter-backdrop{position:fixed;inset:0;z-index:3000;background:rgba(8,28,37,.36);backdrop-filter:blur(2px);display:none}.tp-filter-backdrop.open{display:block}
  .tp-filter-sheet{position:absolute;left:0;right:0;bottom:0;max-height:min(76vh,620px);overflow:auto;background:#fff;border-radius:23px 23px 0 0;box-shadow:0 -18px 50px rgba(10,43,59,.18);padding:13px 16px calc(18px + env(safe-area-inset-bottom))}
  .tp-sheet-grab{width:42px;height:4px;border-radius:99px;background:#d9e2dc;margin:0 auto 12px}.tp-filter-head{display:flex;align-items:center;justify-content:space-between}.tp-filter-head h3{margin:0;font-size:20px}.tp-filter-head button{border:0;background:none;color:#587067;font-size:12px}
  .tp-filter-group{border-top:1px solid #e8eeea;margin-top:14px;padding-top:13px}.tp-filter-group h4{font-size:11px;margin:0 0 9px;color:#294b3d}.tp-filter-options{display:flex;gap:7px;flex-wrap:wrap}.tp-sheet-pill{border:1px solid #d9e4dd;background:#f8faf9;color:#526a5f;border-radius:999px;padding:8px 10px;font-size:9px;font-weight:800}.tp-sheet-pill.active{border-color:#80b396;background:#eaf6ee;color:#226e49}
  .tp-filter-actions{position:sticky;bottom:0;display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;background:#fff;padding-top:14px;margin-top:16px}.tp-filter-actions button{height:44px;border-radius:13px;font-size:10px;font-weight:900}.tp-filter-reset{border:1px solid #d8e3dc;background:#fff;color:#52695e}.tp-filter-show{border:0;background:#173247;color:#fff}

  @media(max-width:370px){
    body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy strong{font-size:11px!important;letter-spacing:.075em!important}
    body.tp-market-catalog-prototype .toura-global-nav[data-current="marketplace"] .tg-brand-copy:after{font-size:8px!important;letter-spacing:.1em!important;padding-left:6px!important}
    .tp-family-pill{padding:7px 10px}.tp-proto-search input{font-size:12px}.tp-results-grid{gap:7px}.tp-card-body{padding:8px}.tp-card-title{font-size:11px}
  }
}
