/* Toura Passport FINISH-002C / 011I / 022AI — permanent authenticated application shell.
   Mobile authenticated surfaces share one physical hamburger/menu contract.
   Explorer retains only its map-native outer header; its signed-in menu mounts
   this same tp011i component with the same markup, spacing, divider and Sign Out. */
.tp011i-app-header,.tp011i-app-menu{display:none}
@media (max-width:760px){
  :root{--tp011i-header-h:58px;--tp011i-ink:#102d43;--tp011i-green:#309760;--tp011i-muted:#78857f;--tp011i-line:#e1e8e4;--tp011i-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
  html.tp011i-auth-likely .tp011i-app-header{
    position:sticky;top:0;z-index:4000;width:100%;height:58px;min-height:58px;box-sizing:border-box;
    padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;
    background:rgba(255,255,255,.99);border-bottom:1px solid var(--tp011i-line);
    box-shadow:none;font-family:var(--tp011i-font);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)
  }
  .tp011i-brand-lockup{display:inline-flex;align-items:baseline;gap:7px;min-width:0;line-height:1;white-space:nowrap}
  .tp011i-brand-lockup strong{display:inline-flex;align-items:baseline;gap:3px;margin:0;color:var(--tp011i-ink);font:760 12px/1 var(--tp011i-font);letter-spacing:.08em;white-space:nowrap}
  .tp011i-brand-lockup strong span{color:#102d43}.tp011i-brand-lockup strong b{color:var(--tp011i-green);font-weight:760}
  .tp011i-brand-lockup small{display:inline-block;margin:0;padding-left:8px;border-left:1px solid #d8dfe3;color:var(--tp011i-muted);font:800 8px/1 var(--tp011i-font);letter-spacing:.15em;text-transform:uppercase;white-space:nowrap}
  .tp011i-brand-lockup small:before{content:var(--tp011i-context,"MY ACCOUNT")}

  .tp011i-menu-button{appearance:none;width:38px;height:38px;min-width:38px;flex:0 0 38px;margin-left:auto;padding:0;border:0;background:transparent;box-shadow:none;position:relative;cursor:pointer}
  .tp011i-menu-button:before{content:"";position:absolute;left:8px;right:8px;top:11px;height:2px;background:#1c3a4b;box-shadow:0 7px 0 #1c3a4b,0 14px 0 #1c3a4b;border-radius:2px}
  .tp011i-menu-button:focus-visible{outline:2px solid rgba(48,151,96,.28);outline-offset:2px;border-radius:8px}

  html.tp011i-auth-likely .tp011i-app-menu{position:fixed;z-index:4300;top:54px;right:12px;left:auto;width:220px;max-width:calc(100vw - 24px);padding:6px;border:1px solid #dce7df;border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(10,43,59,.14);box-sizing:border-box;font-family:var(--tp011i-font)}
  html.tp011i-auth-likely .tp011i-app-menu:not([hidden]){display:block}
  .tp011i-app-menu a,.tp011i-app-menu button{appearance:none;display:block;width:100%;min-height:0;margin:0;padding:10px 11px;border:0;border-radius:9px;background:transparent;color:#173247;box-shadow:none;text-align:left;text-decoration:none;font:750 11px/1.25 var(--tp011i-font);letter-spacing:0;cursor:pointer;box-sizing:border-box}
  .tp011i-app-menu a:hover,.tp011i-app-menu a:focus-visible,.tp011i-app-menu button:hover,.tp011i-app-menu button:focus-visible{background:#eef6f1;color:#1f6a4b;outline:none}
  .tp011i-app-menu [data-current-workspace="true"]{color:#0d7b46;font-weight:850;cursor:default;background:transparent}
  .tp011i-app-menu .tp011i-signout{margin-top:4px;padding-top:11px;border-top:1px solid #dce7df;border-radius:0 0 9px 9px;color:#66766f}

  /* Authenticated mobile permanently uses the new shell. Older route headers remain
     available only for desktop and signed-out/public gateway behavior. */
  html.tp011i-auth-likely body #memberPage>.member-topbar,
  html.tp011i-auth-likely body.rewards-page>.toura-global-nav[data-current="marketplace"],
  html.tp011i-auth-likely body>.toura-global-nav[data-current="community"],
  html.tp011i-auth-likely body .partner-global-nav,
  html.tp011i-auth-likely body .studio-topbar,
  html.tp011i-auth-likely body .tp011d-settings-header{display:none!important}

  /* Legacy mobile menu artifacts cannot paint behind the permanent shell. */
  html.tp011i-auth-likely body .tp006c-toolbox-btn,
  html.tp011i-auth-likely body .tp006c-toolbox-menu,
  html.tp011i-auth-likely body .tp006a-community-menu-btn,
  html.tp011i-auth-likely body .tp006a-community-menu,
  html.tp011i-auth-likely body #partnerMenu,
  html.tp011i-auth-likely body #tp011cSupplierPassportBtn,
  html.tp011i-auth-likely body #tp011cSupplierPassportMenu{display:none!important}

  /* Member session resolution happens below a stable shell rather than replacing it. */
  html.tp011i-auth-likely body.member-session-resolving{background:#fff!important;background-image:none!important}
  html.tp011i-auth-likely body.member-session-resolving #memberSessionResolution,
  html.tp011i-auth-likely body.member-session-resolving #passportGateway{visibility:hidden!important}

  /* Formal mode boundary only when crossing Explorer <-> application shell. */
  html.tp011i-mode-out:before,html.tp011i-mode-in:before{content:"";position:fixed;inset:0;z-index:99990;pointer-events:none;background:#fff}
  html.tp011i-mode-out:before{opacity:0;animation:tp011i-mode-cover 145ms cubic-bezier(.2,.75,.2,1) forwards}
  html.tp011i-mode-in:before{opacity:1;transition:opacity 185ms cubic-bezier(.22,.78,.2,1)}
  html.tp011i-mode-in.tp011i-mode-ready:before{opacity:0}
  @keyframes tp011i-mode-cover{to{opacity:1}}
}

@media (max-width:760px){
  /* Dedicated Profile & Settings content retained after retiring the 011D shell. */
  body.tp011d-settings-page{margin:0;background:#f8fbf9;color:#173247;font-family:var(--tp011i-font)}
  .tp011d-settings-main{max-width:620px;margin:0 auto;padding:22px 16px 110px}
  .tp011d-settings-intro{padding:4px 2px 18px}
  .tp011d-settings-intro small{display:block;color:#278a58;font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}
  .tp011d-settings-intro h1{margin:7px 0 7px;font-size:27px;line-height:1.04;color:#102a3d}
  .tp011d-settings-intro p{margin:0;color:#6d7c75;font-size:13px;line-height:1.5}
  .tp011d-settings-grid{display:grid;gap:10px}
  .tp011d-settings-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;box-sizing:border-box;min-height:76px;padding:14px;border:1px solid #e1e9e5;border-radius:16px;background:#fff;color:inherit;text-decoration:none}
  .tp011d-settings-icon{width:40px;height:40px;border-radius:12px;background:#eef7f2;display:grid;place-items:center;color:#237d50;font-weight:900;font-size:16px}
  .tp011d-settings-card strong{display:block;font-size:14px;color:#153044}.tp011d-settings-card small{display:block;margin-top:4px;color:#75827c;font-size:11px;line-height:1.35}
  .tp011d-settings-card>i{font-style:normal;color:#84928b;font-size:22px}
  .tp011d-settings-note{margin-top:16px;padding:13px 14px;border:1px solid #e3ebe7;border-radius:14px;background:#fff;color:#6f7d76;font-size:11px;line-height:1.45}
}

@media(prefers-reduced-motion:reduce){html.tp011i-mode-out:before{animation:none!important;opacity:1!important}html.tp011i-mode-in:before{transition:none!important}}
