.mobile-install-heading { display:flex; gap:16px; align-items:center; }
.mobile-install-heading img { flex:none; border-radius:12px; }
.mobile-install-heading > div { min-width:0; }
#mobile-install-state { font-weight:600; }
.mobile-install-guide { margin-top:20px; border-top:1px solid var(--line); }
.mobile-install-guide summary { padding:14px 0; min-height:48px; cursor:pointer; color:var(--ink); }
.mobile-install-guide h4 { color:var(--ink); font-size:14px; margin:14px 0 6px; }
.mobile-install-guide p { color:var(--muted); font-size:13px; line-height:1.6; }
.mobile-install-guide summary:focus-visible { outline:2px solid var(--accent-text); outline-offset:3px; }
.mobile-recovery-link { display:inline-flex; align-items:center; margin-top:12px; min-height:44px; color:var(--muted); text-underline-offset:3px; font-size:12px; }
.mobile-state-banner { display:flex; align-items:center; flex-wrap:wrap; gap:10px 16px; margin:12px 20px; padding:12px 16px; border:1px solid #D2D8CF; background:#ECEEE8; border-radius:10px; color:var(--ink); font-size:12px; line-height:1.5; }
.mobile-state-banner p { flex:1; min-width:170px; }
.mobile-state-banner button { padding:10px 14px; min-height:44px; border:1px solid var(--line); border-radius:8px; background:var(--raised); color:var(--ink); cursor:pointer; }
.mobile-state-banner[hidden],#mobile-install-button[hidden] { display:none !important; }
.mobile-reload-dialog { margin:auto; width:calc(100% - 32px); max-width:440px; max-height:calc(100dvh - 32px); overflow:auto; padding:24px; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:16px; }
.mobile-reload-dialog::backdrop { background:#F6F5F1F5; backdrop-filter:blur(4px); }
.mobile-reload-dialog h2 { font-family:Manrope,system-ui,sans-serif; padding:0; margin:0 0 12px; font-size:27px; font-weight:400; color:var(--ink); text-transform:none; letter-spacing:-.6px; }
.mobile-reload-dialog p { color:var(--muted); font-size:14px; line-height:1.6; }
.mobile-reload-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.mobile-reload-actions button { flex:1 1 160px; min-height:48px; padding:12px; color:var(--ink); background:var(--raised); border:1px solid var(--line); border-radius:9px; cursor:pointer; }
#mobile-reload-confirm { background:var(--accent); color:#141414; border-color:var(--accent); }
@media(min-width:1080px) { .mobile-state-banner { margin:14px 40px; } }
@media(max-width:420px) { .mobile-install-heading { align-items:flex-start; gap:12px; } .mobile-install-heading img { width:44px; height:44px; } }
