.kpl-app-dialog { max-width: 580px; width: calc(100% - 28px); max-height: 90dvh; padding: 0; }
.kpl-app-options { padding: 0 24px 24px; line-height: 1.6; }
.kpl-app-options section { padding: 16px 0; border-top: 1px solid var(--line); }
.kpl-app-options h3 { margin: 0; color: var(--ink); font-size: 1.2rem; }
.kpl-app-options p, .kpl-app-options small { color: var(--muted); }
.kpl-app-options small { display: block; margin-top: 10px; }
.kpl-app-options .portal-button { width: 100%; text-align: center; }
.kpl-app-options details { margin-top: 14px; }
.kpl-app-options summary { cursor: pointer; color: var(--cyan); }
.kpl-app-options ol { padding-left: 22px; }
.kpl-app-options li { margin: 8px 0; }
@media (max-width: 480px) { .kpl-app-options { padding: 0 16px 16px; } .kpl-app-dialog .dialog-top { padding: 16px; gap: 10px; } .kpl-app-dialog .dialog-top h2 { font-size: 1.35rem; } }

.kpl-app-banner { display:flex; align-items:center; gap:22px; margin:24px 0; padding:26px 30px; border:1px solid #3c6388; border-radius:20px; background:linear-gradient(110deg,#eef3f9 0%,#eff2f9 55%,#f5eef8 100%); box-shadow:0 14px 38px #0003; }
.kpl-app-banner-logo { width:80px; height:80px; flex-shrink:0; border-radius:19px; border:1px solid #ffffff30; }
.kpl-app-banner-copy { flex:1; }
.kpl-app-banner-copy>span { color:#155565; font-size:12px; font-weight:800; letter-spacing:.14em; }
.kpl-app-banner-copy h2 { margin:6px 0; color:#3d3d3d; font-size:clamp(22px,3vw,30px); line-height:1.2; }
.kpl-app-banner-copy p { margin:0; color:#233c57; font-size:15px; line-height:1.5; }
.kpl-app-download-button { display:flex; align-items:center; justify-content:center; gap:12px; min-height:64px; flex-shrink:0; padding:14px 22px; border:0; border-radius:12px; background:linear-gradient(110deg,#2ce0ff,#86ecff); color:#05243a; font-family:inherit; line-height:1.3; font-size:16px; font-weight:800; text-align:left; cursor:pointer; box-shadow:0 7px 20px #25d8ff25; transition:transform .15s,box-shadow .15s; }
.kpl-app-download-button small { display:block; margin-top:4px; font-size:12px; font-weight:600; }
.kpl-app-download-button:hover { transform:translateY(-2px); box-shadow:0 10px 24px #25d8ff40; }
.kpl-app-download-button:focus-visible { outline:3px solid white; outline-offset:5px; }
@media(max-width:760px){.kpl-app-banner{flex-wrap:wrap;gap:15px;padding:22px;}.kpl-app-banner-logo{width:66px;height:66px;}.kpl-app-banner-copy{flex-basis:calc(100% - 90px)}.kpl-app-download-button{width:100%;text-align:center;}.kpl-app-banner-copy p{font-size:14px;}}
