.mechat-webapp {
  position: relative;
  z-index: 10;
  max-width: 1152px;
  margin: 0 auto 24px;
  padding: 0 24px;
  scroll-margin-top: 104px;
}
.mechat-webapp-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 40px 48px;
  border: 1px solid #c7e5ff;
  border-radius: 32px;
  background: linear-gradient(120deg, #eff8ff, #fff 85%);
  box-shadow: 0 16px 48px -28px #0584fe40;
}
.mechat-webapp-label {
  display: inline-block;
  margin-bottom: 16px;
  padding: 6px 12px;
  border-radius: 999px;
  color: #0064c4;
  background: #e3f2ff;
  font-size: 13px;
  font-weight: 800;
}
.mechat-webapp-copy { max-width: 600px; }
.mechat-webapp-copy h2 {
  margin: 0 0 16px;
  color: #0f172a;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.5;
  font-weight: 900;
}
.mechat-webapp-copy p { margin: 0 0 12px; color: #475569; line-height: 2; font-size: 16px; }
.mechat-webapp-hint { color: #64748b; font-size: 13px; line-height: 1.9; }
.mechat-webapp-action { display: flex; flex-direction: column; align-items: center; gap: 20px; flex-shrink: 0; }
.mechat-webapp-icon { border-radius: 22px; border: 1px solid #e2effb; background: white; }
.mechat-webapp-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 56px;
  padding: 14px 24px;
  border-radius: 16px;
  background: #0584fe;
  color: white;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 8px 20px -8px #0584fe80;
  transition: background .2s, transform .2s;
}
.mechat-webapp-button:hover { background: #006bd6; transform: translateY(-2px); }
.mechat-nav-webapp {
  margin-left: auto;
  padding: 10px 16px;
  border-radius: 999px;
  background: #e7f3ff;
  color: #0064c4;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 800;
  direction: rtl;
}
.mechat-nav-webapp:hover { background: #d7ebff; }
.mechat-webapp-button:focus-visible, .mechat-nav-webapp:focus-visible { outline: 3px solid #0f172a; outline-offset: 4px; }
@media (max-width: 640px) {
  .mechat-webapp { padding: 0 20px; }
  .mechat-webapp-card { flex-direction: column; align-items: stretch; gap: 28px; padding: 28px 24px; border-radius: 28px; }
  .mechat-webapp-action { flex-direction: row; gap: 12px; }
  .mechat-webapp-icon { width: 56px; height: 56px; border-radius: 16px; }
  .mechat-webapp-button { flex: 1; gap: 8px; padding: 14px 12px; font-size: 14px; }
  .mechat-nav-webapp { padding: 10px 12px; font-size: 12px; }
}
@media (max-width: 360px) {
  .mechat-webapp-icon { display: none; }
  .mechat-nav-webapp { padding: 10px 8px; }
}
@media (prefers-reduced-motion: reduce) { .mechat-webapp-button { transition: none; } }
