@charset "UTF-8";
/* 定义变量，支持日夜切换 */
:root { --bg-color: #f3f5f7; --card-bg: #ffffff; --text-main: #1f2937; --text-sub: #6b7280; }
.dark { --bg-color: #111827; --card-bg: #1f2937; --text-main: #f3f4f6; --text-sub: #9ca3af; }

body { font-family: system-ui, -apple-system, sans-serif; background-color: var(--bg-color); color: var(--text-main); transition: background-color 0.3s, color 0.3s; -webkit-tap-highlight-color: transparent; }
.no-scrollbar::-webkit-scrollbar { display: none; }
.glass { background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(10px); }
.dark .glass { background: rgba(31, 41, 55, 0.9); border-bottom: 1px solid #374151; }

/* 卡片特效 */
.pc-card { background-color: var(--card-bg); transition: all 0.3s ease; }
.pc-card:hover { transform: translateY(-5px); box-shadow: 0 15px 30px -5px rgba(79, 70, 229, 0.2); border-color: #4F46E5; }
.dark .pc-card { border-color: #374151; }

/* 骨架屏 */
@keyframes shimmer { 0% {background-position: -1000px 0} 100% {background-position: 1000px 0} }
.skeleton { animation: shimmer 2s infinite linear; background: linear-gradient(to right, #f3f4f6 4%, #e5e7eb 25%, #f3f4f6 36%); background-size: 1000px 100%; }

.nav-active { color: #4F46E5; font-weight: 600; }
.nav-active i { transform: translateY(-2px); transition: transform 0.2s; }

/* 弹窗动画 */
@keyframes slideUp { from {transform: translateY(100%); opacity: 0;} to {transform: translateY(0); opacity: 1;} }
@keyframes scaleIn { from {transform: scale(0.9); opacity: 0;} to {transform: scale(1); opacity: 1;} }
.modal-anim { animation: scaleIn 0.2s ease-out; }

/* 复制反馈动画 */
@keyframes copyFeedback { 0% {transform: scale(1);} 50% {transform: scale(1.2); color: #10B981;} 100% {transform: scale(1);} }
.copy-anim { animation: copyFeedback 0.3s ease; }