| | |
| | | color: rgb(var(--foreground-rgb)); |
| | | font-family: 'PingFang SC', 'Microsoft YaHei', Arial, sans-serif; |
| | | min-height: 100vh; |
| | | opacity: 1; |
| | | transition: opacity 0.2s ease-out; |
| | | } |
| | | |
| | | /* 滚动性能优化 */ |
| | |
| | | .animate-shine { |
| | | animation: shine 1.5s ease-in-out; |
| | | } |
| | | |
| | | @keyframes error-scan { |
| | | 0% { |
| | | transform: translateX(0%); |
| | | } |
| | | 100% { |
| | | transform: translateX(50%); |
| | | } |
| | | } |
| | | |
| | | .animate-error-scan { |
| | | animation: error-scan 2s linear infinite; |
| | | } |
| | | |
| | | /* 页面过渡效果 */ |
| | | .page-transitioning { |
| | | animation: fadeOut 0.2s ease-out forwards; |
| | | pointer-events: none; |
| | | } |
| | | |
| | | @keyframes fadeOut { |
| | | from { |
| | | opacity: 1; |
| | | } |
| | | to { |
| | | opacity: 0; |
| | | } |
| | | } |
| | | |
| | | /* 防止链接点击时的闪烁 */ |
| | | .no-flash-link { |
| | | -webkit-tap-highlight-color: transparent; |
| | | } |