.install-banner[hidden],.install-reopen[hidden],[data-install-steps][hidden]{display:none!important}
.install-banner{position:fixed;z-index:50;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:min(420px,calc(100vw - 32px));padding:24px;background:#faf6f0;color:#301c24;border:1px solid #d9be78;border-radius:20px;box-shadow:0 12px 50px #42102330;animation:install-arrive .25s ease-out}
.install-intro{display:flex;gap:15px;align-items:flex-start;padding-right:15px}
.install-intro img,.install-dialog-icon{flex-shrink:0;border-radius:13px}
.install-banner h2{font-size:20px;line-height:1.25;letter-spacing:-.6px;margin:0 0 7px;color:#6d1a36}
.install-banner p{font-size:14px;line-height:1.5;margin:0}
.install-close{position:absolute;right:5px;top:5px;width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:#6d1a36;font:400 26px/1 sans-serif;cursor:pointer;border-radius:50%}
.install-actions{display:flex;align-items:center;gap:12px;margin-top:19px;flex-wrap:wrap}
.install-primary,.install-later,.install-reopen{font:700 14px/1.4 'DM Sans',sans-serif;min-height:44px;cursor:pointer}
.install-primary{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:#6d1a36;color:#fff;border:0;border-radius:30px;padding:13px 19px}
.install-primary:hover{background:#421023}
.install-later{border:0;background:transparent;padding:10px 8px;color:#6d1a36}
.install-reopen{border:0;background:transparent;color:#6d1a36;padding:8px 0;text-decoration:underline;text-underline-offset:4px}
.install-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:30px;border:1px solid #d9be78;border-radius:22px;background:#faf6f0;color:#301c24;overflow:auto;box-shadow:0 20px 80px #42102340}
.install-dialog::backdrop{background:#301c2475}
.install-dialog h2{font-size:29px;line-height:1.17;letter-spacing:-1px;color:#6d1a36;margin:20px 0 13px}
.install-dialog p,.install-dialog li{font-size:15px;line-height:1.6}
.install-dialog p{margin:0 0 16px}
.install-device-label{display:block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin:22px 0 7px}
.install-dialog select{width:100%;min-height:46px;background:#fff;border:1px solid #c8a9b3;border-radius:10px;padding:10px;font:inherit;color:#301c24}
.install-dialog ol{padding-left:23px;margin:20px 0}
.install-dialog li{padding-left:5px;margin:0 0 14px}
.install-dialog li::marker{font-weight:700;color:#6d1a36}
.install-dialog strong{color:#6d1a36;font-weight:700}
.install-dialog .install-help{font-size:13px;padding:12px 14px;background:#f0e1e4;border-radius:10px}
.install-share svg{width:20px;height:20px;vertical-align:middle;color:#6d1a36}
.install-done{width:100%;margin-top:5px}
.install-dialog :focus-visible,.install-banner :focus-visible,.install-reopen:focus-visible{outline:3px solid #b48a38;outline-offset:3px}
@keyframes install-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.install-banner{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:22px 20px}.install-dialog{padding:25px 22px}.install-intro{gap:12px}.install-intro img{width:46px;height:46px}.install-banner h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.install-banner{animation:none}}
@media(display-mode:standalone),(display-mode:fullscreen){.install-banner,.install-reopen{display:none!important}}

.learning-install-link{text-align:center;padding:16px 20px 28px}.learning-install-link button{min-height:44px}

.install-never{display:block;margin:14px auto 0;padding:8px 12px;min-height:44px;border:0;background:transparent;color:#6d1a36;font:500 13px/1.4 sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer;border-radius:8px}
.install-never:hover{background:#eed9df}.install-never:focus-visible{outline:3px solid #6d1a36;outline-offset:2px}
