.asunaro-install { box-sizing:border-box; width:calc(100% - 36px); max-width:390px; max-height:calc(100dvh - 36px); padding:16px; border:0; border-radius:8px; background:#fff; color:#302a31; overflow-y:auto; overscroll-behavior:contain; font:1rem/1.5 sans-serif; }
.asunaro-install::backdrop { background:rgba(47,32,48,.5); }
.asunaro-install header { display:flex; align-items:center; gap:12px; }
.asunaro-install header img { flex:none; border-radius:12px; }
.asunaro-install h2 { margin:0; font-size:1.15em; }
.asunaro-install p { margin:10px 0; overflow-wrap:anywhere; }
.asunaro-install [data-app-name] { font-weight:bold; }
.asunaro-install ol { display:grid; gap:8px; list-style:none; padding:0; margin:12px 0; }
.asunaro-install li { display:grid; grid-template-columns:64px minmax(0,1fr); gap:8px; align-items:center; padding:8px; border-radius:8px; background:#fff3f8; }
.asunaro-install li > span:last-child { font-weight:bold; }
.asunaro-install li b { display:inline-grid; place-items:center; width:24px; height:24px; margin-right:6px; border-radius:50%; background:#ae346b; color:white; font-size:13px; }
.asunaro-install-visual { display:grid; place-items:center; height:64px; background:white; border-radius:8px; }
.asunaro-install-phone { position:relative; display:block; box-sizing:border-box; width:38px; height:54px; border:4px solid #453340; border-radius:8px; background:#fffcf5; }
.asunaro-install-phone > span { position:absolute; display:grid; place-items:center; right:2px; font-weight:bold; }
.asunaro-install-share { bottom:3px; width:22px; height:22px; border:2px solid #27809a; border-radius:4px; color:#27809a; font-size:20px; }
.asunaro-install-menu { top:0; font-size:24px; line-height:1; }
.asunaro-install-sheet { bottom:4px; width:26px; border:1px solid #ae346b; border-radius:3px; color:#ae346b; }
.asunaro-install-toggle { bottom:8px; width:26px; border-radius:10px; background:#337d44; color:white; font-size:10px; }
.asunaro-install-add { top:3px; padding:2px; background:#ae346b; color:white; border-radius:3px; font-size:9px; }
.asunaro-install .asunaro-install-note { font-size:.8em; color:#62545e; }
.asunaro-install button { box-sizing:border-box; min-height:46px; padding:10px; border:1px solid #ae346b; border-radius:8px; background:white; color:#8e2855; font:inherit; font-weight:bold; cursor:pointer; }
.asunaro-install [data-install] { width:100%; margin:4px 0 12px; background:#ae346b; color:white; }
.asunaro-install [hidden] { display:none; }
.asunaro-install footer { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.asunaro-install :focus-visible { outline:3px solid #27809a; outline-offset:2px; }
@media(max-width:360px) { .asunaro-install footer { grid-template-columns:1fr; } }

.asunaro-install-show_more { bottom:4px; width:26px; height:24px; border:1px solid #ae346b; border-radius:5px; background:#fff3f8; color:#ae346b; font-size:22px; line-height:1; }
.asunaro-install-step-note { display:block; margin-top:4px; color:#62545e; font-size:.8em; font-weight:normal; }

.install-menu-button { display:flex; align-items:center; gap:10px; width:120px; min-height:44px; flex-shrink:0; padding:6px 4px; border:0; border-radius:6px; background:transparent; color:#17415b; font:bold 16px/1.4 sans-serif; cursor:pointer; }
.install-menu-button[hidden] { display:none; }
.install-menu-button svg { flex:none; }
.install-menu-button:hover { background:#e9f5fc; }
.install-menu-button:focus-visible { outline:3px solid #27809a; outline-offset:2px; }
[data-staff-display="large"] .install-menu-button { width:144px; min-height:52px; font-size:19px; }
