[x-cloak] { display: none !important; }

.gradient-hero {
  background:
    radial-gradient(ellipse at top left, rgba(22,93,255,.35), transparent 50%),
    radial-gradient(ellipse at bottom right, rgba(99,102,241,.25), transparent 50%),
    linear-gradient(135deg, #0A2A6E 0%, #165DFF 50%, #1E3A8A 100%);
}
.gradient-card {
  background: linear-gradient(135deg, #f0f7ff 0%, #e0ecff 100%);
}
.bg-grid {
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size: 50px 50px;
}
.scroll-marquee { animation: scroll-x 30s linear infinite; }
@keyframes scroll-x { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.text-balance { text-wrap: balance; }
.shimmer { background: linear-gradient(90deg, transparent, rgba(255,255,255,.4), transparent); animation: shimmer 2s infinite; }
@keyframes shimmer { 0%{transform:translateX(-100%);} 100%{transform:translateX(100%);} }

/* 滚动条 */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* 移动端表格滚动 */
.table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
