@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;600;700&display=swap'); @font-face { font-family: 'PingFangLiuAngLeTianTi'; src: url('/fonts/PingFangLiuAngLeTianTi-2.ttf') format('truetype'); font-weight: normal; font-style: normal; font-display: swap; } @tailwind base; @tailwind components; @tailwind utilities; body { font-family: 'Noto Sans SC', sans-serif; background: #fbbf24; min-height: 100vh; } /* 自定义动画 */ @keyframes cooking { 0%, 100% { transform: translateY(0px) rotate(0deg); } 25% { transform: translateY(-5px) rotate(2deg); } 50% { transform: translateY(-3px) rotate(-1deg); } 75% { transform: translateY(-7px) rotate(1deg); } } @keyframes fire { 0%, 100% { transform: scaleY(1) scaleX(1); } 50% { transform: scaleY(1.1) scaleX(0.95); } } @keyframes steam { 0% { opacity: 0.7; transform: translateY(0px) scale(1); } 100% { opacity: 0; transform: translateY(-20px) scale(1.2); } } @keyframes pulse-glow { 0%, 100% { box-shadow: 0 0 20px rgba(249, 115, 22, 0.3); } 50% { box-shadow: 0 0 30px rgba(249, 115, 22, 0.6); } } .cooking-animation { animation: cooking 2s ease-in-out infinite; } .fire-animation { animation: fire 1.5s ease-in-out infinite; } .steam-animation { animation: steam 2s ease-out infinite; } .pulse-glow { animation: pulse-glow 2s ease-in-out infinite; } /* 文本截断工具类 */ .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .line-clamp-3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }