/* iPhone / iOS Safari PWA polish */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
body { overscroll-behavior-y: none; min-height: 100dvh; }
@supports (-webkit-touch-callout: none) {
  input, textarea, select, [contenteditable="true"] { font-size: max(16px, 1em); }
}
:root { --ios-keyboard-inset: 0px; }
html.ios-keyboard-open .composer, html.ios-keyboard-open form.composer { padding-bottom: 8px; }
.ios-install-hint { position: fixed; left: max(12px, env(safe-area-inset-left)); right: max(12px, env(safe-area-inset-right)); bottom: calc(12px + env(safe-area-inset-bottom)); z-index: 9999; display: flex; gap: 10px; align-items: center; padding: 12px 14px; border-radius: 14px; color: var(--ink, #102b38); background: color-mix(in srgb, var(--surface, #fff) 88%, transparent); -webkit-backdrop-filter: blur(18px) saturate(1.4); backdrop-filter: blur(18px) saturate(1.4); border: 1px solid var(--line, rgba(16,43,56,.14)); box-shadow: 0 10px 30px rgba(16,43,56,.18); font: 14px/1.4 system-ui, -apple-system, sans-serif; }
.ios-install-hint p { margin: 0; flex: 1; }
.ios-install-hint button { min-width: 44px; min-height: 44px; border: 0; border-radius: 10px; background: transparent; color: inherit; font-size: 20px; }
@media (prefers-reduced-motion: no-preference) { .ios-install-hint { animation: ios-hint-in .25s ease-out; } @keyframes ios-hint-in { from { transform: translateY(20px); opacity: 0; } } }
