.service-shell main.install-main { overflow-y: auto; }
.install-layout { width: 90%; max-width: 1000px; margin: auto; padding: 32px 0; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 48px; }
.install-phone { position: relative; width: 260px; aspect-ratio: 9 / 18; margin: auto; padding: 12px; border: 3px solid #343b3e; border-radius: 32px; background: #14191b; box-shadow: 0 14px 32px #0002; }
.install-phone::before { content: ""; position: absolute; top: 15px; left: 50%; transform: translateX(-50%); width: 72px; height: 12px; border-radius: 8px; background: #14191b; }
.install-phone > img { width: 100%; height: 100%; display: block; object-fit: contain; border-radius: 21px; }
.install-phone.lotto-phone { display: flex; align-items: center; justify-content: center; background: #101416; }
.install-phone.lotto-phone > img { width: 70%; height: auto; object-fit: contain; border-radius: 20px; }
.install-details { text-align: center; }
.install-details h1 { font-size: 26px; letter-spacing: 0; margin: 0 0 12px; }
.install-details h2 { font-size: 20px; letter-spacing: 0; margin: 0 0 20px; }
.install-qr { display: inline-block; padding: 12px; background: white; border: 1px solid #cdd7de; }
.install-qr img, .install-qr canvas { display: block; max-width: 100%; }
.install-details p { font-size: 14px; line-height: 1.7; margin: 16px 0; }
.install-link { display: inline-block; border-bottom: 1px solid currentColor; color: #20796f; font-weight: 600; }
@media(max-width:600px) {
  .install-layout { grid-template-columns: 1fr; gap: 24px; padding: 24px 0; }
  .install-phone { width: 180px; }
  .install-details h1 { font-size: 22px; }
}
