[hidden] { display: none !important; }
.home-install { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 24px; padding: 12px 14px; border: 1px solid #334155; border-radius: 14px; background: #1e293b80; text-align: left; animation: install-entry .6s .9s both; }
.home-install img { border-radius: 10px; }
.home-install > div { flex: 1; min-width: 140px; }
.home-install strong { font-size: 13px; color: #e2e8f0; }
.home-install p { font-size: 12px; color: #94a3b8; }
.home-install button { min-height: 44px; padding: 8px 12px; border: 1px solid #38bdf866; border-radius: 10px; color: #7dd3fc; background: #38bdf80d; font: inherit; font-size: 13px; cursor: pointer; }
.home-install button:hover { background: #38bdf826; }
.home-install button:focus-visible { outline: 2px solid #38bdf8; outline-offset: 3px; }
.home-install #app-install-help { width: 100%; line-height: 1.6; }
@keyframes install-entry { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .home-install { animation: none; } }

.install-announcement{position:fixed;left:max(18px,env(safe-area-inset-left));bottom:calc(22px + env(safe-area-inset-bottom));z-index:65;max-width:calc(100vw - 36px);color:#e2e8f0;font-family:inherit}
.install-announcement-panel{position:relative;width:320px;max-width:100%;max-height:calc(100dvh - 110px);overflow:auto;border:1px solid #38bdf85c;border-radius:24px;background:linear-gradient(145deg,#152a3ff7,#0e182afc);box-shadow:0 18px 60px #02061799,0 0 35px #22d3ee12;animation:install-slide-in .7s cubic-bezier(.16,1,.3,1) both}
.install-announcement-close{position:absolute;right:10px;top:10px;z-index:2;width:44px;height:44px;border:1px solid #ffffff24;border-radius:50%;background:#0f172ab3;color:#cbd5e1;font-size:27px;cursor:pointer;line-height:1}
.install-announcement-preview{height:180px;position:relative;display:flex;justify-content:center;align-items:center;perspective:700px;background:radial-gradient(ellipse at 50% 80%,#22d3ee30,transparent 72%);overflow:hidden}
.install-phone{width:96px;height:155px;background:#08101c;border:3px solid #64748b;border-radius:19px;padding:7px;position:relative;transform:rotateY(-17deg) rotateZ(-8deg);box-shadow:7px 10px 0 #02061766,0 15px 25px #02061755;animation:install-phone-arrive 1s cubic-bezier(.16,1,.3,1) both}
.install-phone-camera{position:absolute;top:5px;left:32px;width:25px;height:5px;background:#020617;border-radius:0 0 5px 5px;z-index:1}.install-phone-screen{height:100%;border-radius:10px;padding:12px 6px 5px;background:#18283e;color:#e2e8f0;font-size:7px;display:flex;flex-direction:column;gap:5px}.install-phone-screen>b{font-size:8px}.install-phone-screen>span{color:#94a3b8;font-size:6px}.install-phone-screen>strong{color:#38bdf8;font-size:17px;line-height:1}.install-phone-screen small{font-size:7px;font-weight:400}.install-phone-chart{height:30px;display:flex;align-items:flex-end;gap:4px}.install-phone-chart i{flex:1;background:linear-gradient(#38bdf8,#10b981);height:45%;border-radius:2px 2px 0 0}.install-phone-chart i:nth-child(2){height:70%}.install-phone-chart i:nth-child(3){height:55%}.install-phone-chart i:nth-child(4){height:95%}.install-phone-chart i:nth-child(5){height:65%}.install-phone-advice{border:1px solid #334155;padding:4px;border-radius:4px;font-size:5px}.install-phone-nav{margin-top:auto;color:#67e8f9;text-align:center;font-size:8px;border-top:1px solid #334155;padding-top:3px}
.install-desktop{position:absolute;left:calc(50% + 30px);top:63px;width:67px;height:45px;border:3px solid #64748b;border-radius:5px;background:linear-gradient(140deg,#0f172a,#164e63);transform:rotateY(-20deg) rotateZ(5deg);box-shadow:5px 5px 0 #02061755;display:grid;place-items:center}.install-desktop>span{position:absolute;top:100%;height:15px;width:5px;background:#64748b}.install-desktop>span:after{content:"";position:absolute;top:12px;left:-13px;width:30px;height:3px;background:#64748b;border-radius:3px}.install-desktop>i{font-style:normal;color:#38bdf8;font-size:19px}.install-preview-caption{position:absolute;left:14px;bottom:9px;color:#94a3b8;font-size:9px}
.install-announcement-copy{padding:0 20px 20px}.install-announcement-badge{color:#6ee7b7;font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.install-announcement-copy h2{font-size:22px;line-height:1.25;font-weight:800;margin:6px 0 8px;color:#f8fafc}.install-announcement-copy p{font-size:13px;line-height:1.6;color:#b6c6da;margin:0 0 14px}.install-announcement-action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;border:0;border-radius:12px;padding:11px;background:linear-gradient(110deg,#38bdf8,#34d399);color:#082032;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.install-announcement-copy>small{display:block;margin-top:8px;text-align:center;font-size:10px;color:#94a3b8}.install-announcement-copy [role="status"]{margin-top:12px;padding:10px;border-radius:10px;background:#02061755;font-size:12px}
.install-announcement-tab{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #38bdf866;border-radius:0 16px 16px 0;background:#13263bf5;color:#a5f3fc;font:inherit;font-size:12px;cursor:pointer;box-shadow:0 5px 20px #02061755}.install-announcement:has(.install-announcement-tab:not([hidden])){left:0}.install-announcement button:focus-visible{outline:3px solid #67e8f9;outline-offset:3px}.install-announcement-close:hover{background:#1e3a52}
@keyframes install-slide-in{from{opacity:0;transform:translateX(calc(-100% - 35px))}to{opacity:1;transform:translateX(0)}}@keyframes install-phone-arrive{from{opacity:0;transform:translateX(-30px) rotateY(-50deg) rotateZ(-16deg)}to{opacity:1;transform:translateX(0) rotateY(-17deg) rotateZ(-8deg)}}
@media(max-width:640px){.install-announcement{left:12px;bottom:calc(100px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}.install-announcement-panel{width:285px;max-height:calc(100dvh - 180px)}.install-announcement-preview{height:132px}.install-phone{scale:.75}.install-desktop{scale:.8;top:45px}.install-announcement-copy{padding:0 16px 16px}.install-announcement-copy h2{font-size:20px}.install-announcement-copy p{font-size:12px;margin-bottom:10px}.install-announcement:has(.install-announcement-tab:not([hidden])){bottom:calc(22px + env(safe-area-inset-bottom))}}
html[data-install="false"] .install-announcement{display:none!important}
@media(prefers-reduced-motion:reduce){.install-announcement-panel,.install-phone{animation:none}}
html[data-motion="reduced"] .install-announcement-panel,html[data-motion="reduced"] .install-phone,html.public-motion-paused .install-announcement-panel,html.public-motion-paused .install-phone{animation:none}
