/* Install UI never replaces the browser's own permission/install confirmation. */
#hub-app-install-ui [hidden]{display:none!important}
.hub-app-nudge{position:fixed;top:calc(78px + env(safe-area-inset-top,0px));left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));z-index:62;display:flex;gap:11px;align-items:flex-start;max-width:440px;margin:auto;padding:16px 35px 15px 14px;border:1px solid #ecd9f2;border-radius:20px;background:#fff;color:#352441;box-shadow:0 8px 30px #5126571c;box-sizing:border-box;animation:hub-app-nudge-in .25s ease-out}
.hub-app-nudge>img{border-radius:13px;flex:none}.hub-app-nudge-content{min-width:0}.hub-app-nudge strong{display:block;font-size:14px;line-height:1.5}.hub-app-nudge p{margin:4px 0 10px;font-size:12px;line-height:1.65;color:#87778f}.hub-app-nudge-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.hub-app-nudge-actions>a{font-size:12px;min-height:36px;padding:8px 12px}.hub-app-nudge-actions>button{font:inherit;font-size:11px;min-height:36px;background:none;color:#82578e;border:0;padding:3px 0;text-align:left;cursor:pointer}.hub-app-nudge-close,.hub-app-dialog-close{display:grid;place-items:center;width:36px;height:36px;border:0;background:transparent;color:#9582a0;font:26px/1 system-ui;position:absolute;top:6px;right:4px;cursor:pointer}
.hub-app-primary,.hub-app-secondary{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:11px 18px;border-radius:14px;font:inherit;font-size:14px;font-weight:800;line-height:1.4;text-align:center;text-decoration:none;box-sizing:border-box;cursor:pointer}.hub-app-primary{border:1px solid transparent;background:linear-gradient(110deg,#f020a5,#b41ae4);color:#fff}.hub-app-secondary{border:1px solid #d9afe8;background:#fff;color:#ac20b3}.hub-app-wide{width:100%;margin-top:17px}.hub-app-primary:disabled,.hub-app-secondary:disabled{opacity:.6;cursor:wait}.hub-app-nudge :focus-visible,.hub-app-install-dialog :focus-visible{outline:2px solid #b82dca;outline-offset:3px}
.hub-app-install-dialog{position:fixed;inset:0;width:min(390px,calc(100% - 32px));max-width:390px;max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));margin:auto;padding:32px 24px 24px;border:1px solid #efdef4;border-radius:26px;background:#fff;color:#352441;box-shadow:0 20px 80px #30183c2e;overflow:auto;overscroll-behavior:contain;box-sizing:border-box;text-align:center}.hub-app-install-dialog::backdrop{background:#30203e57;backdrop-filter:blur(3px)}.hub-app-install-dialog:not([open]){display:none}.hub-app-install-dialog[data-fallback-open]{display:block;z-index:1000}.hub-app-dialog-close{top:9px;right:9px}.hub-app-install-dialog h2{font-size:24px;line-height:1.3;letter-spacing:-.5px;margin:16px 0 10px;font-weight:850}.hub-app-install-dialog p{font-size:14px;line-height:1.65;margin:7px 0}.hub-app-install-dialog .hub-app-muted{color:#8d7c97;font-size:13px}.hub-app-install-dialog small{display:block;margin-top:12px;font-size:11px;line-height:1.6;color:#91829a}.hub-app-install-dialog img{border-radius:22px}.hub-app-install-visual{width:148px;height:148px;display:grid;place-items:center;position:relative;margin:3px auto 13px}.hub-app-install-dots{position:absolute;inset:0;animation:hub-app-spin 2.6s linear infinite}.hub-app-install-dots i{position:absolute;left:69px;top:69px;width:10px;height:10px;background:#d41bc3;border-radius:50%;transform:rotate(calc(var(--dot) * 45deg)) translateY(-65px);opacity:calc(.3 + var(--dot) * .1)}.hub-app-install-dots i:nth-child(1){--dot:0}.hub-app-install-dots i:nth-child(2){--dot:1}.hub-app-install-dots i:nth-child(3){--dot:2}.hub-app-install-dots i:nth-child(4){--dot:3}.hub-app-install-dots i:nth-child(5){--dot:4}.hub-app-install-dots i:nth-child(6){--dot:5}.hub-app-install-dots i:nth-child(7){--dot:6}.hub-app-install-dots i:nth-child(8){--dot:7}.hub-app-install-dialog.is-request-sent .hub-app-install-dots{display:none}.hub-app-success-visual{width:96px;position:relative;margin:12px auto 22px}.hub-app-success-visual span{position:absolute;bottom:-4px;right:-9px;background:#20bd79;border:4px solid white;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;box-sizing:content-box}.hub-app-success-visual svg{width:23px;height:23px;fill:none;stroke:white;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.hub-app-install-dialog .hub-app-eyebrow{text-transform:uppercase;letter-spacing:1px;color:#8d7798;font-size:11px;font-weight:800}.hub-app-confetti{position:absolute;top:42px;left:24px;right:24px;height:125px;pointer-events:none;overflow:hidden}.hub-app-confetti i{position:absolute;top:20px;left:10%;width:7px;height:11px;transform:rotate(30deg);background:#e633b1;animation:hub-app-confetti .9s ease-out both}.hub-app-confetti i:nth-child(2){left:25%;top:5px;background:#ffc460;animation-delay:.06s}.hub-app-confetti i:nth-child(3){left:7%;top:85px;background:#b65be0;animation-delay:.12s}.hub-app-confetti i:nth-child(4){left:85%;top:18px;background:#d722c6}.hub-app-confetti i:nth-child(5){left:94%;top:70px;background:#ffc460;animation-delay:.08s}.hub-app-confetti i:nth-child(6){left:75%;top:88px;background:#c274e8;animation-delay:.1s}.hub-app-confetti i:nth-child(7){left:20%;top:110px;animation-delay:.16s}.hub-app-confetti i:nth-child(8){left:80%;top:0;background:#ffc460}
.hub-app-help-icon{margin:0 auto 4px}.hub-app-install-dialog [data-app-panel=help]>div{text-align:left}.hub-app-install-dialog ol{padding-left:23px;margin:12px 0}.hub-app-install-dialog li{padding:5px 0;font-size:14px;line-height:1.6}.hub-app-embedded{background:#f8effb;padding:12px;border-radius:12px;text-align:left;color:#80578e}.hub-app-install-dialog [data-app-copy-status]:empty{display:none}
@keyframes hub-app-spin{to{transform:rotate(360deg)}}@keyframes hub-app-nudge-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes hub-app-confetti{from{opacity:0;translate:0 -15px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.hub-app-install-dots,.hub-app-confetti i,.hub-app-nudge{animation:none!important}}@media(max-width:360px){.hub-app-nudge{padding-left:12px;gap:9px}.hub-app-nudge>img{width:34px;height:34px}.hub-app-nudge strong{font-size:13px}.hub-app-install-dialog{padding:30px 20px 22px}.hub-app-install-dialog h2{font-size:22px}}

/* Programmatically focused dialog headings are not interactive controls. */
.hub-app-install-dialog h2:focus{outline:none}
/* Help shares the install page's three-step guide; wait/success keep their compact card. */
.hub-app-install-dialog[data-panel=help]{max-width:480px;width:calc(100% - 28px);padding:25px 24px 22px;text-align:left;scroll-padding:20px}
.hub-app-install-dialog[data-panel=help] .hub-app-dialog-close{width:40px;height:40px;right:14px;top:14px;background:#f8f5fa;border-radius:50%;color:#483151;font-size:28px}
.hub-app-install-dialog[data-panel=help] .hub-app-help-icon{display:none}
.hub-app-install-dialog[data-panel=help] h2{font-size:22px;line-height:1.4;margin:0 42px 20px 0;letter-spacing:-.5px}
.hub-app-install-dialog .hub-install-guide-intro{font-size:14px;line-height:1.75;margin:0 0 20px}
.hub-app-install-dialog ol.hub-install-steps{list-style:none;padding:0;margin:18px 0 24px;counter-reset:step}
.hub-app-install-dialog .hub-install-steps li{display:flex;gap:12px;align-items:flex-start;padding:0;margin:20px 0;counter-increment:step}
.hub-app-install-dialog .hub-install-steps li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fce7f3;color:#b51c79;font-size:17px;font-weight:800;flex:none}
.hub-app-install-dialog .hub-install-steps li>div{min-width:0;padding-top:2px}.hub-app-install-dialog .hub-install-steps strong{font-size:15px;line-height:1.5}
.hub-app-install-dialog .hub-install-steps p{font-size:13px;line-height:1.75;color:#7b658b;margin:6px 0 0}
.hub-app-install-dialog .hub-install-steps svg{display:inline-block;vertical-align:middle;width:22px;height:22px;color:#3475e5}
.hub-app-browser-note{background:#fff7fb;border-radius:15px;padding:15px;margin:18px 0 0;font-size:13px}.hub-app-browser-note strong{font-size:13px}.hub-app-browser-note p{font-size:12px;line-height:1.75;margin:7px 0}.hub-app-browser-note .hub-app-secondary{font-size:12px;margin-top:12px;min-height:44px}.hub-app-browser-note [data-app-embedded][hidden]+button{margin-top:0}
@media(max-width:360px){.hub-app-install-dialog[data-panel=help]{padding:22px 18px 18px}.hub-app-install-dialog[data-panel=help] h2{font-size:20px;margin-right:38px}.hub-app-install-dialog .hub-install-steps li{gap:10px}.hub-app-install-dialog .hub-install-steps strong{font-size:14px}}
