#migration-modal{
  position:fixed; inset:0; z-index:2147483647;
  display:flex; align-items:center; justify-content:center;
  padding:20px; box-sizing:border-box;
  background:rgba(0,0,0,.82); backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased;
}
#migration-modal.mm-hidden{display:none;}
.mm-card{
  position:relative;
  width:100%; max-width:420px; max-height:92vh; overflow-y:auto;
  background:linear-gradient(180deg,#1c1c22 0%,#111116 100%);
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px; padding:26px 22px 24px;
  box-shadow:0 24px 70px rgba(0,0,0,.6);
  text-align:center; color:#fff;
  animation:mm-pop .35s cubic-bezier(.19,1,.22,1);
}
@keyframes mm-pop{from{opacity:0;transform:translateY(16px) scale(.97);}to{opacity:1;transform:none;}}
.mm-close{
  position:absolute; top:12px; right:12px; width:34px; height:34px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12);
  color:#fff; font-size:16px; line-height:1; border-radius:50%; cursor:pointer;
  padding:0; transition:background .2s ease;
}
.mm-close:hover{ background:rgba(255,255,255,.18); }
.mm-badge{
  display:inline-block; font-size:12px; font-weight:700; letter-spacing:.4px;
  color:#ffd24d; background:rgba(255,196,0,.12);
  border:1px solid rgba(255,196,0,.28);
  padding:6px 12px; border-radius:999px; margin-bottom:14px;
}
.mm-title{ font-size:23px; line-height:1.2; font-weight:800; margin:0 0 10px; }
.mm-text{ font-size:14.5px; line-height:1.55; color:#c7c7cf; margin:0 0 20px; }
.mm-text strong{ color:#fff; }

.mm-illus{ display:flex; align-items:center; justify-content:center; gap:12px; margin:6px 0 24px; }
.mm-app{ position:relative; width:88px; }
.mm-app img{ width:72px; height:72px; border-radius:18px; display:block; margin:0 auto; }
.mm-app-label{ font-size:11px; color:#9a9aa6; margin-top:8px; }
.mm-app--old img{ filter:grayscale(1) brightness(.6); }
.mm-cross{
  position:absolute; top:-6px; right:6px; width:26px; height:26px;
  background:#ff3b30; color:#fff; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:14px; font-weight:800; box-shadow:0 3px 10px rgba(255,59,48,.5);
}
.mm-app--new img{ box-shadow:0 0 0 3px rgba(48,209,88,.9),0 0 22px rgba(48,209,88,.55); }
.mm-new-badge{
  position:absolute; top:-6px; right:0; padding:3px 8px;
  background:#30d158; color:#04210e; border-radius:999px;
  font-size:10px; font-weight:800; letter-spacing:.5px;
  box-shadow:0 3px 10px rgba(48,209,88,.5);
}
.mm-arrow{ font-size:26px; color:#30d158; }

.mm-btn{
  width:100%; display:flex; align-items:center; justify-content:center; gap:9px;
  padding:15px 18px; border:none; border-radius:14px; cursor:pointer;
  background:linear-gradient(180deg,#2f6bff 0%,#1e54e6 100%);
  color:#fff; font-size:15.5px; font-weight:700; font-family:inherit;
  box-shadow:0 8px 22px rgba(47,107,255,.4); transition:transform .12s ease, filter .2s ease;
}
.mm-btn:hover{ filter:brightness(1.06); }
.mm-btn:active{ transform:scale(.97); }
.mm-btn.is-done{ background:linear-gradient(180deg,#30d158 0%,#25b048 100%); box-shadow:0 8px 22px rgba(48,209,88,.4); }
.mm-btn-ico{ font-size:18px; }

.mm-close-txt{
  display:inline-block; margin-top:14px; background:none; border:none;
  color:#8a8a95; font-size:13.5px; font-family:inherit; cursor:pointer; text-decoration:underline;
}
.mm-close-txt:hover{ color:#c7c7cf; }

.mm-step2{ margin-top:20px; padding-top:18px; border-top:1px solid rgba(255,255,255,.08); animation:mm-pop .3s ease; }
.mm-check{ color:#30d158; font-weight:800; font-size:15px; margin-bottom:8px; }
.mm-instructions{ font-size:13.5px; line-height:1.55; color:#c7c7cf; margin:0 0 14px; }
.mm-instructions strong{ color:#fff; }
.mm-urlbar{
  display:flex; align-items:center; gap:8px;
  background:#2a2a31; border:1px solid rgba(255,255,255,.12);
  border-radius:11px; padding:11px 13px; text-align:left; overflow:hidden;
}
.mm-urlbar-ico{ font-size:12px; opacity:.8; }
.mm-urlbar-link{ font-size:13px; color:#e6e6ee; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; flex:1; }
.mm-urlbar-caret{ color:#2f6bff; font-weight:700; animation:mm-blink 1s steps(1) infinite; }
@keyframes mm-blink{50%{opacity:0;}}
.mm-paste-hint{ font-size:12px; color:#8a8a95; margin-top:10px; }
