#app {
  min-height: 100%;
  background: #ffffff;
  color: #171717;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif;
  font-size: calc(var(--rpx) * 30);
}

button {
  font: inherit;
}

button::after {
  border: 0;
}

.page-shell {
  box-sizing: border-box;
  min-height: var(--page-height);
  padding: calc(var(--rpx) * 48) calc(var(--rpx) * 40) calc(calc(var(--rpx) * 48) + env(safe-area-inset-bottom));
}

.page-title {
  margin: 0;
  font-family: "Songti SC", "Noto Serif CJK SC", serif;
  font-size: calc(var(--rpx) * 62);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: calc(var(--rpx) * -2);
}

.muted {
  color: #686258;
}

.primary-button,
.secondary-button {
  min-height: calc(var(--rpx) * 96);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: calc(var(--rpx) * 16);
  font-weight: 700;
}

.primary-button {
  background: linear-gradient(135deg, #fbe6ea, #fff7f8);
  color: #f06464;
  box-shadow: 0 calc(var(--rpx) * 10) calc(var(--rpx) * 30) rgba(30, 35, 40, 0.06);
}

.secondary-button {
  background: transparent;
  color: #171717;
  border: calc(var(--rpx) * 2) solid rgba(20,20,20,0.08);
}

.primary-button[disabled],
.secondary-button[disabled] {
  background: #dfd8cc;
  color: #8b8479;
  border-color: transparent;
}

.data-alert {
  margin-top: calc(var(--rpx) * 36);
  padding: calc(var(--rpx) * 26) calc(var(--rpx) * 28);
  border-radius: calc(var(--rpx) * 14);
  background: linear-gradient(135deg, #fce9df, #fff8f4);
  color: #b54d4d;
  font-size: calc(var(--rpx) * 26);
  line-height: 1.55;
}
