/* Installable app + app mode. Browser mode is unchanged: everything below only applies when installed (html.app-mode) or to the install banner */
#appbar,#apptabs{display:none}
#installBar{position:fixed;left:12px;right:12px;bottom:calc(72px + env(safe-area-inset-bottom));z-index:9999;display:none;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:#0f2d5c;border:1px solid rgba(96,165,250,.35);box-shadow:0 10px 30px rgba(0,0,0,.5);color:#e2e8f0;font:14px/1.35 Inter,system-ui,-apple-system,sans-serif;max-width:520px;margin:0 auto}
#installBar.show{display:flex;animation:ibUp .35s ease}
@keyframes ibUp{from{transform:translateY(30px);opacity:0}to{transform:none;opacity:1}}
#installBar img{width:44px;height:44px;border-radius:10px;flex:none}#installBar .ibTxt{flex:1}#installBar b{color:#fff;display:block;font-size:15px}
#installBar button{border:0;cursor:pointer;font:inherit}#ibGo{background:#3b82f6;color:#fff;padding:9px 14px;border-radius:999px;font-weight:700}#ibX{background:none;color:#94a3b8;font-size:22px;line-height:1;padding:4px}
.ibShare{display:inline-block;width:14px;height:16px;vertical-align:-3px;border:2px solid #60a5fa;border-top:0;border-radius:2px;position:relative;margin:0 2px}.ibShare:before{content:"";position:absolute;left:4px;top:-7px;width:2px;height:12px;background:#60a5fa}

html.app-mode{scroll-behavior:auto;-webkit-tap-highlight-color:transparent}
html.app-mode body{padding-top:calc(56px + env(safe-area-inset-top));padding-bottom:calc(70px + env(safe-area-inset-bottom));overscroll-behavior-y:none;-webkit-user-select:none;user-select:none;animation:appIn .22s ease}
html.app-mode input,html.app-mode textarea,html.app-mode select,html.app-mode p,html.app-mode li{-webkit-user-select:text;user-select:text}
@keyframes appIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
html.app-mode header,html.app-mode footer,html.app-mode .mbar,html.app-mode .skip,html.app-mode #installBar{display:none}
html.app-mode #appbar{display:flex;position:fixed;top:0;left:0;right:0;z-index:100;height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 12px 0;align-items:center;gap:10px;background:rgba(10,31,68,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08);color:#fff}
#appbar .ab-back{display:none;background:none;border:0;color:#93c5fd;font-size:28px;line-height:1;padding:4px 8px 6px 2px;cursor:pointer}
#appbar.sub .ab-back{display:block}#appbar.sub .ab-logo{display:none}
#appbar .ab-logo{width:34px;height:34px;object-fit:contain}
#appbar .ab-title{flex:1;font-weight:800;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#appbar .ab-call{color:#fff;background:#3b82f6;border-radius:999px;padding:7px 12px;font-weight:700;font-size:14px;text-decoration:none}
html.app-mode #apptabs{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:100;padding:6px 4px env(safe-area-inset-bottom);background:rgba(10,31,68,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.1)}
#apptabs a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0 8px;color:#94a3b8;text-decoration:none;font-size:11px;font-weight:600}
#apptabs a svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#apptabs a.on{color:#60a5fa}
#apptabs a.quote{color:#fff}#apptabs a.quote span.qb{background:#3b82f6;border-radius:14px;padding:6px 14px;margin-top:-2px;display:flex}
html.app-mode .hero{padding-top:34px;padding-bottom:34px}
html.app-mode .hero h1{font-size:30px;line-height:1.15}
html.app-mode section{padding-top:30px;padding-bottom:30px}
html.app-mode h2{font-size:24px;line-height:1.2}
html.app-mode .wrap{padding-left:16px;padding-right:16px}
html.app-mode .grid{grid-template-columns:1fr;gap:12px}
html.app-mode .card{border-radius:18px}
html.app-mode .btn{display:block;width:100%;text-align:center;padding:15px 18px;border-radius:14px;margin-top:8px}
html.app-mode .cta{display:block}
html.app-mode .who{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:4px}
html.app-mode .who::-webkit-scrollbar{display:none}html.app-mode .who span{flex:none}
html.app-mode #consent{bottom:calc(76px + env(safe-area-inset-bottom))}
html.app-mode a:active,html.app-mode .btn:active,html.app-mode #apptabs a:active{opacity:.6}
/* fix: override mobile menu nav rules on the app tab bar */
html.app-mode nav#apptabs{position:fixed !important;top:auto !important;bottom:0 !important;left:0 !important;right:0 !important;height:auto !important;max-height:none !important;overflow:visible !important;display:flex !important;flex-direction:row !important;padding:6px 4px env(safe-area-inset-bottom) !important;background:rgba(10,31,68,.97) !important}
html.app-mode nav#apptabs a{font-size:11px;color:#94a3b8}
html.app-mode nav#apptabs a.on{color:#60a5fa}
html.app-mode nav#apptabs a.quote{color:#fff}
html.app-mode #nav{display:none !important}
