* { box-sizing: border-box; margin: 0; padding: 0; }
body { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; background: #1f1f1f; color: #e3e3e3; padding: 16px; font-family: 'Google Sans','Product Sans',Roboto,Arial,sans-serif; }
html[data-os="ios"] .android-only { display: none !important; }
html[data-os="android"] .ios-only, html[data-os="desktop"] .ios-only { display: none !important; }
html[data-os="ios"] body { background: #000; font-family: -apple-system,BlinkMacSystemFont,'SF Pro Text','Helvetica Neue',Arial,sans-serif; }
html[data-os="desktop"] .btn-text { display: none; }
.device-note { display: none; margin: 0 24px 20px; color: #7f848d; font-size: 11px; font-weight: 600; line-height: 1.35; text-align: center; }
html[data-os="desktop"] .device-note { display: block; }
/* ── Android dialog ── */
.dialog { background: #2d2d2d; border-radius: 28px; width: 100%; max-width: 360px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,.3), 0 4px 8px rgba(0,0,0,.3); }
.dialog-header { padding: 24px 24px 0; display: flex; align-items: center; gap: 16px; }
.f0UV3d { display: flex; align-items: center; gap: 8px; }
.f0UV3d .kOqhQd { width: 36px; height: 36px; flex-shrink: 0; }
.f0UV3d span { font-size: 22px; font-weight: 500; color: #e3e3e3; white-space: nowrap; }
.dialog-body { padding: 20px 24px 8px; }
.dialog-body p { font-size: 14px; line-height: 1.5; color: #bdc1c6; }
.app-preview { margin: 20px 24px; padding: 12px; background: #3c3c3c; border-radius: 12px; display: flex; align-items: center; gap: 12px; }
.app-icon { width: 48px; height: 48px; border-radius: 12px; background: #2b070d; display: flex; justify-content: center; align-items: center; flex-shrink: 0; overflow: hidden; }
.app-icon img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }
.logo-fallback { font-size: 22px; font-weight: 900; color: #fff; }
.app-info { flex: 1; min-width: 0; }
.app-info .name { font-size: 14px; font-weight: 500; color: #e3e3e3; margin-bottom: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.app-info .dev { font-size: 12px; color: #9aa0a6; }
.rating { display: flex; align-items: center; gap: 4px; margin-top: 4px; }
.rating svg { width: 12px; height: 12px; fill: #9aa0a6; }
.rating span { font-size: 11px; color: #9aa0a6; }
.dialog-actions { padding: 8px 16px 16px; display: flex; justify-content: flex-end; gap: 8px; }
.btn { display: inline-block; padding: 10px 24px; border: none; border-radius: 20px; font-size: 14px; font-weight: 500; font-family: inherit; text-align: center; text-decoration: none; cursor: pointer; transition: background .2s, opacity .2s; }
.btn-text { background: transparent; color: #a8c7fa; }
.btn-text:hover { background: rgba(168,199,250,.08); }
.btn-filled { background: #a8c7fa; color: #062e6f; }
.btn-filled:hover { opacity: .9; }
.footer { margin-top: 24px; display: flex; align-items: center; gap: 8px; opacity: .5; }
.footer svg { width: 20px; height: 20px; fill: #9aa0a6; }
.footer span { font-size: 11px; color: #9aa0a6; }
/* ── iOS sheet ── */
.ios-view { position: fixed; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 8px; padding: 16px 10px calc(10px + env(safe-area-inset-bottom)); }
.ios-sheet { width: 100%; max-width: 420px; border-radius: 14px; overflow: hidden; text-align: center; background: rgba(25,25,28,.88); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }
.ios-app { display: flex; align-items: center; gap: 12px; padding: 16px 16px 4px; text-align: left; }
.ios-icon { width: 52px; height: 52px; }
.ios-name { font-size: 15px; font-weight: 600; color: #fff; }
.ios-dev { font-size: 13px; color: #98989e; }
.ios-msg { padding: 10px 16px 14px; font-size: 13px; line-height: 1.4; color: #98989e; }
.ios-btn { display: block; width: 100%; padding: 14px 0; border: none; background: transparent; color: #0a84ff; font-size: 17px; font-family: inherit; text-decoration: none; text-align: center; cursor: pointer; }
.ios-btn:active { background: rgba(255,255,255,.08); }
.ios-btn-strong { font-weight: 600; border-top: .5px solid rgba(84,84,88,.65); }