/* Install banner and app-mode polish. The banner shows on phones and tablets only, above the bottom tab bar. */
.olfx-install { display: none; }
@media (max-width: 899px) {
	.olfx-install { display: flex; align-items: flex-start; gap: .85rem; position: fixed; z-index: 95; left: .5rem; right: .5rem; bottom: calc(70px + env(safe-area-inset-bottom, 0px)); max-width: 30rem; margin-inline: auto; box-sizing: border-box; padding: .85rem 1rem; background: var(--wp--preset--color--base, #fff); color: var(--wp--preset--color--contrast, #1f2328); border: 1px solid var(--wp--preset--color--line, #e2e5e9); border-radius: 18px; box-shadow: 0 8px 28px rgba(31, 35, 40, .22); transform: translateY(150%); opacity: 0; transition: transform .28s cubic-bezier(.2, .8, .2, 1), opacity .22s ease; }
	.olfx-install.is-shown { transform: none; opacity: 1; }
	.olfx-install__icon { flex: 0 0 auto; width: 44px; height: 44px; border-radius: 11px; }
	.olfx-install__text { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: .2rem; font-size: .92rem; line-height: 1.35; }
	.olfx-install__text strong { font-size: 1rem; }
	.olfx-install__text > span { color: var(--wp--preset--color--muted, #59636e); }
	.olfx-install__btns { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .55rem; }
	.olfx-install__btns button { font: inherit; font-weight: 600; font-size: .95rem; min-height: 44px; padding: .55rem 1.2rem; border-radius: 999px; cursor: pointer; border: 1px solid var(--wp--preset--color--accent, #2650b8); background: var(--wp--preset--color--accent, #2650b8); color: #fff; }
	.olfx-install__btns button.olfx-btn--ghost { background: transparent; color: var(--wp--preset--color--accent, #2650b8); }
	.olfx-install__btns button:disabled { opacity: .6; }
	.olfx-install__btns button:focus-visible, .olfx-install__x:focus-visible { outline: 2px solid var(--wp--preset--color--accent, #2650b8); outline-offset: 2px; }
	.olfx-install--ios .olfx-install__text { padding-right: 2rem; }
	.olfx-install__steps { margin: .1rem 0 0; padding-left: 1.2rem; color: var(--wp--preset--color--muted, #59636e); }
	.olfx-install__steps svg { vertical-align: -3px; }
	.olfx-install__x { position: absolute; top: .2rem; right: .35rem; width: 44px; height: 44px; border: 0; background: transparent; color: inherit; font-size: 1.6rem; line-height: 1; cursor: pointer; }
}
@media (max-width: 899px) { .olfx-install-open .olfx-fab { display: none; } }
@media (prefers-reduced-motion: reduce) { .olfx-install { transition: none; } }

/* Opened from the home screen: no tap flash, no double-tap zoom delay, no sideways bounce, and the tab bar stays put. */
@media (display-mode: standalone) {
	html { -webkit-tap-highlight-color: transparent; overscroll-behavior-x: none; }
	body { touch-action: manipulation; -webkit-touch-callout: none; }
	.olfx-tabbar, .olfx-tabbar * { -webkit-user-select: none; user-select: none; }
	.olfx-install { display: none !important; }
}
