/* GuluAsset 共享动效:淡入上浮 / 数字滚动 / 曲线绘制 / 卡片悬浮 / 金色流光。低调高级,尊重无障碍。 */
/* 字体精修:大数字用表格数字(等宽对齐)+轻字距,高端金融质感 */
body { font-feature-settings: "tnum" 1, "ss01" 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
/* 整页柔和淡入(减少切换白闪);仅在有动效偏好时 */
@media (prefers-reduced-motion: no-preference) { body { animation: guFade .28s ease both; } }
.netval, .hero .val, .stat .v, .val, [data-countup], .gdonut + div b { font-variant-numeric: tabular-nums; }
@keyframes guFadeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes guFade   { from { opacity: 0; } to { opacity: 1; } }
@keyframes guPop    { 0% { opacity: 0; transform: scale(.92); } 60% { transform: scale(1.02); } 100% { opacity: 1; transform: scale(1); } }
@keyframes guShimmer { to { background-position: 200% center; } }
@keyframes guDraw   { to { stroke-dashoffset: 0; } }
@keyframes guGlow   { 0%,100% { filter: drop-shadow(0 0 0 rgba(212,175,55,0)); } 50% { filter: drop-shadow(0 4px 14px rgba(212,175,55,.18)); } }

.gu-anim { opacity: 0; animation: guFadeUp .6s cubic-bezier(.22,.61,.36,1) forwards; animation-delay: var(--d, 0s); }
.gu-pop  { opacity: 0; animation: guPop .55s cubic-bezier(.22,.61,.36,1) forwards; animation-delay: var(--d, 0s); }

/* 大数字:金色流光扫过一次 */
.gu-shimmer {
  background: linear-gradient(90deg, #d4af37 0%, #f6e7a8 25%, #d4af37 50%, #f6e7a8 75%, #d4af37 100%);
  background-size: 200% auto; -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; animation: guShimmer 3.5s linear infinite;
}

/* 卡片/行:悬浮微抬 */
.gu-card { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.gu-card:hover { transform: translateY(-3px); box-shadow: 0 10px 30px rgba(0,0,0,.35); }

/* SVG 曲线:从左到右画出来(polyline 加 pathLength="1" → 与实际线长无关,必动) */
.gu-draw { stroke-dasharray: 1; stroke-dashoffset: 1; animation: guDraw 1.8s cubic-bezier(.4,.1,.2,1) .2s forwards; }
.gu-area { opacity: 0; animation: guFade 1.4s ease 1s forwards; }

/* 折叠箭头平滑 */
details > summary { transition: background .2s ease; }

@media (prefers-reduced-motion: reduce) {
  .gu-anim, .gu-pop, .gu-area { opacity: 1 !important; animation: none !important; }
  .gu-draw { stroke-dashoffset: 0 !important; animation: none !important; }
  .gu-shimmer { animation: none !important; }
}

/* ===== 高端导航(吸顶+图标+高亮当前页) ===== */
.gnav { position: sticky; top: 0; z-index: 40; display: flex; justify-content: space-between;
  align-items: center; padding: 12px 4px; margin-bottom: 16px;
  background: rgba(10,10,11,.72); backdrop-filter: saturate(150%) blur(12px);
  -webkit-backdrop-filter: saturate(150%) blur(12px); border-bottom: 1px solid var(--border, #2c261d); }
.gnav .gbrand { font-size: 19px; font-weight: 800; letter-spacing: .5px; display: flex; align-items: baseline; gap: 7px; }
.gnav .gbrand .en { font-size: 11px; font-weight: 600; color: var(--gold, #d4af37); letter-spacing: 2px; }
.gnav .links { display: flex; gap: 4px; }
.gnav .links a { color: var(--muted, #8a8275); text-decoration: none; font-size: 13px;
  padding: 7px 13px; border-radius: 9px; transition: color .2s, background .2s, transform .15s; display: inline-flex; align-items: center; gap: 5px; }
.gnav .links a:hover { color: var(--gold2, #e8c878); background: rgba(212,175,55,.08); transform: translateY(-1px); }
.gnav .links a.on { color: #0a0a0b; background: linear-gradient(135deg, var(--gold2, #e8c878), var(--gold, #d4af37)); font-weight: 700; box-shadow: 0 4px 14px rgba(212,175,55,.25); }

/* 手机底部 Tab 栏(像 App) */
.gtab { display: none; }

/* 里程碑徽章 */
.gbadges { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 4px; }
.gbadge { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600;
  padding: 6px 12px; border-radius: 20px; background: rgba(212,175,55,.10);
  border: 1px solid rgba(212,175,55,.28); color: var(--gold2, #e8c878); }
.gbadge .ic { font-size: 14px; }

/* 环形图(本金 vs 收益) */
.gdonut { transform: rotate(-90deg); }
.gdonut circle { fill: none; stroke-linecap: round; }
.gdonut .ring { stroke: #2c261d; }
.gdonut .val { stroke: url(#gdgrad); stroke-dasharray: var(--c,0) 999; transition: stroke-dasharray 1.2s cubic-bezier(.4,.1,.2,1); }

/* ===== 手机适配(通用,不依赖各页结构) ===== */
@media (max-width: 640px) {
  .wrap { padding: 14px 11px 40px !important; }
  /* 宽表格在小屏可横向滑动,不再撑破布局 */
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; white-space: nowrap; }
  /* 大数字略缩,避免溢出 */
  .netval, .hero .val, .stat .v { font-size: 34px !important; }
  .brand { font-size: 18px !important; }
  /* 导航/顶栏在窄屏换行不挤 */
  .topbar { flex-wrap: wrap; gap: 8px; }
  .nav a, .region-switch a, a.nav { margin-left: 0 !important; margin-right: 10px; }
  .region-switch { display: flex; flex-wrap: wrap; gap: 6px; }
  .cards, .statbar { grid-template-columns: repeat(2, 1fr) !important; }
  /* 顶部导航的文字链接收起,改用底部 Tab */
  .gnav .links { display: none; }
  .gtab { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
    background: rgba(10,10,11,.94); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
    border-top: 1px solid var(--border, #2c261d); padding: 6px 4px env(safe-area-inset-bottom, 6px); }
  .gtab a { flex: 1; text-align: center; color: var(--muted, #8a8275); text-decoration: none;
    font-size: 10px; padding: 5px 0; display: flex; flex-direction: column; align-items: center; gap: 2px; transition: color .2s; }
  .gtab a .ic { font-size: 19px; }
  .gtab a.on { color: var(--gold, #d4af37); }
  body { padding-bottom: 64px; }
}
