/* v1.3.2 installable mobile app / PWA */
.tbpv-app-install{position:fixed;left:18px;right:18px;bottom:18px;z-index:9998;margin:auto;max-width:820px;display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:14px;background:#111;color:#fff;border:2px solid rgba(255,255,255,.18);border-radius:24px;padding:13px 15px;box-shadow:0 24px 70px rgba(0,0,0,.38);transform:translateY(130%);opacity:0;transition:.26s ease}.tbpv-app-install[hidden]{display:none}.tbpv-app-install.is-visible{transform:translateY(0);opacity:1}.tbpv-app-install-icon img{display:block;width:58px;height:58px;border-radius:16px}.tbpv-app-install-copy{display:flex;flex-direction:column;min-width:0}.tbpv-app-install-copy strong{font-size:16px;line-height:1.1}.tbpv-app-install-copy span{font-size:12px;line-height:1.35;color:#d5d5d5;margin-top:4px}.tbpv-app-install-btn{border:0;border-radius:999px;background:#ffc928;color:#111;padding:12px 17px;min-height:44px;font-weight:1000;cursor:pointer}.tbpv-app-install-close{position:absolute;right:-8px;top:-10px;width:28px;height:28px;border-radius:50%;border:0;background:#fff;color:#111;box-shadow:0 5px 14px rgba(0,0,0,.22);font-size:20px;line-height:1;cursor:pointer}.tbpv-footer-app{border:0;background:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}
.tbpv-ios-sheet{position:fixed;inset:0;z-index:10002;display:grid;align-items:end}.tbpv-ios-sheet[hidden]{display:none}.tbpv-ios-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.68);opacity:0;transition:.2s}.tbpv-ios-card{position:relative;z-index:1;background:#fff;color:#111;border-radius:30px 30px 0 0;padding:30px 26px calc(30px + env(safe-area-inset-bottom));transform:translateY(100%);transition:.22s ease;box-shadow:0 -20px 60px rgba(0,0,0,.25)}.tbpv-ios-sheet.is-visible .tbpv-ios-backdrop{opacity:1}.tbpv-ios-sheet.is-visible .tbpv-ios-card{transform:translateY(0)}.tbpv-ios-card img{border-radius:20px}.tbpv-ios-card h2{font-size:26px;letter-spacing:-.04em;margin:16px 0 12px}.tbpv-ios-card ol{padding-left:22px;line-height:1.7}.tbpv-ios-card p{color:#666}.tbpv-ios-x{position:absolute;right:18px;top:18px;width:36px;height:36px;border-radius:50%;border:0;background:#eee;font-size:24px;cursor:pointer}
.tbpv-app-dock{display:none}
html.tbpv-is-standalone body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}html.tbpv-is-standalone .tbpv-share-fab{bottom:calc(88px + env(safe-area-inset-bottom))}html.tbpv-is-standalone .tbpv-to-top{bottom:calc(145px + env(safe-area-inset-bottom));right:14px}
@media(max-width:700px){.tbpv-app-install{left:10px;right:10px;bottom:10px;grid-template-columns:50px minmax(0,1fr);padding:12px;border-radius:20px}.tbpv-app-install-icon img{width:50px;height:50px;border-radius:14px}.tbpv-app-install-copy strong{font-size:15px}.tbpv-app-install-copy span{font-size:11px}.tbpv-app-install-btn{grid-column:1/-1;width:100%}.tbpv-app-install-close{right:4px;top:4px;background:#2c2c2c;color:#fff;box-shadow:none}.tbpv-ios-card{padding-left:22px;padding-right:22px}.tbpv-ios-card h2{font-size:24px}}
@media(max-width:860px){html.tbpv-is-standalone .tbpv-app-dock{position:fixed;left:0;right:0;bottom:0;z-index:9997;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-top:1px solid rgba(0,0,0,.1);padding:8px 8px calc(7px + env(safe-area-inset-bottom));box-shadow:0 -10px 35px rgba(0,0,0,.1)}.tbpv-app-dock a,.tbpv-app-dock button{appearance:none;border:0;background:none;color:#222;text-decoration:none;display:grid;place-items:center;gap:2px;min-height:49px;font:inherit;cursor:pointer}.tbpv-app-dock span{font-size:20px;line-height:1}.tbpv-app-dock b{font-size:9px;letter-spacing:.02em}.tbpv-app-dock-main{position:relative;margin-top:-27px}.tbpv-app-dock-main span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e63d2e;color:#fff;border:4px solid #fff;box-shadow:0 8px 20px rgba(230,61,46,.32);font-size:27px}.tbpv-app-dock-main b{color:#b52c21}}
@media(prefers-reduced-motion:reduce){.tbpv-app-install,.tbpv-ios-backdrop,.tbpv-ios-card{transition:none}}

/* v1.4.1 mobile width hardening */
.tbpv-app-install,.tbpv-ios-card,.tbpv-app-dock{box-sizing:border-box;min-width:0;max-width:100%}
@media(max-width:700px){
  .tbpv-app-install{left:10px!important;right:10px!important;width:auto!important;max-width:calc(100vw - 20px)!important;margin:0!important;overflow:hidden}
  .tbpv-app-install-copy{min-width:0;max-width:100%;overflow:hidden}
  .tbpv-app-install-copy strong,.tbpv-app-install-copy span{overflow-wrap:anywhere;word-break:normal}
  .tbpv-app-install-btn{min-width:0;max-width:100%;box-sizing:border-box}
  .tbpv-ios-sheet{width:100vw;max-width:100vw;overflow:hidden}
  .tbpv-ios-card{width:100%!important;max-width:100vw!important;padding-left:18px;padding-right:18px;overflow:hidden}
  .tbpv-ios-card ol,.tbpv-ios-card p,.tbpv-ios-card h2{max-width:100%;overflow-wrap:anywhere}
}
@media(max-width:860px){
  html.tbpv-is-standalone .tbpv-app-dock{width:100%!important;max-width:100vw!important;min-width:0;left:0!important;right:0!important;overflow:hidden}
  .tbpv-app-dock a,.tbpv-app-dock button{min-width:0;max-width:100%;padding-inline:2px}
  .tbpv-app-dock b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}


/* v1.4.2 installed app dock fix */
@media (max-width:860px){
  html.tbpv-is-standalone,html.tbpv-is-standalone body{width:100%;max-width:100%;overflow-x:hidden!important}
  html.tbpv-is-standalone .tbpv-app-dock{
    left:0!important;right:0!important;bottom:0!important;
    width:auto!important;max-width:none!important;min-width:0!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    padding-left:max(5px,env(safe-area-inset-left))!important;
    padding-right:max(5px,env(safe-area-inset-right))!important;
    overflow:hidden!important;contain:layout paint;
  }
  html.tbpv-is-standalone .tbpv-app-dock>a,
  html.tbpv-is-standalone .tbpv-app-dock>button{
    width:100%;min-width:0!important;max-width:100%!important;
    padding:0 1px!important;overflow:hidden!important;
  }
  html.tbpv-is-standalone .tbpv-app-dock b{
    width:100%;min-width:0;max-width:100%;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;
  }
  html.tbpv-is-standalone .tbpv-app-dock-main{min-width:0!important;margin-left:0!important;margin-right:0!important}
}
@media (max-width:390px){
  html.tbpv-is-standalone .tbpv-app-dock b{font-size:8px}
  html.tbpv-is-standalone .tbpv-app-dock span{font-size:18px}
  html.tbpv-is-standalone .tbpv-app-dock-main span{width:48px;height:48px;font-size:24px}
}

@media(max-width:700px){html.tbpv-is-standalone .tbpv-afterglow-bar{display:none!important}html.tbpv-is-standalone .tbpv-to-top{bottom:calc(145px + env(safe-area-inset-bottom))!important;right:14px!important}}
