page { --app-viewport-height: 100vh; --app-safe-top: env(safe-area-inset-top, 0px); --app-safe-bottom: env(safe-area-inset-bottom, 0px); --app-touch-min: 44px; background: $paper; color: $ink; font-family: "STKaiti", "KaiTi", serif } @supports (height: 100dvh) { page { --app-viewport-height: 100dvh; } } view:not(.page-header-slot):has(> .page-header-slot) { position: relative; z-index: 31; } .page-shell { min-height: 100vh; box-sizing: border-box; background: $paper; } .paper-card { background: $paper-white; border: 1rpx solid $gold-soft; border-radius: 24rpx; box-sizing: border-box; } .section-title { color: $ink; font-size: 34rpx; font-weight: 700; letter-spacing: 2rpx; } .muted-copy { color: $ink-muted; font-size: 26rpx; line-height: 1.7; } .primary-button { display: flex; align-items: center; justify-content: center; min-height: 92rpx; border: 0; border-radius: 14rpx; background: $brand-red; color: #fff8ec; font-size: 31rpx; font-weight: 700; letter-spacing: 3rpx; } .secondary-button { display: flex; align-items: center; justify-content: center; min-height: 88rpx; border: 1rpx solid $gold; border-radius: 14rpx; background: transparent; color: $brand-red; font-size: 29rpx; font-weight: 600; }