/* 故事页的鼠标（2026-10-29 作者定）：一根细细的黄铜钟表分针，尖端就是点的位置。
   能点的东西上换成「尖端带一圈光」的那根；点下去尖端漾开一圈金色涟漪（cursor.js）；演出时停着两秒不动就隐去。 */
body[data-page="story"] {
  --cur: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23fff3cc'/%3E%3Cstop offset='.45' stop-color='%23d9ae5c'/%3E%3Cstop offset='1' stop-color='%236e4a1a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M2 2 L12 7 L21 19.5 L19.5 21 L7 12 Z' fill='url(%23g)' stroke='%23140d05' stroke-width='1' stroke-linejoin='round'/%3E%3Ccircle cx='23' cy='23' r='3.3' fill='none' stroke='%23140d05' stroke-width='3'/%3E%3Ccircle cx='23' cy='23' r='3.3' fill='none' stroke='url(%23g)' stroke-width='1.6'/%3E%3Cpath d='M25.4 25.4 L29.5 29.5' stroke='%23140d05' stroke-width='3.4' stroke-linecap='round'/%3E%3Cpath d='M25.4 25.4 L29.5 29.5' stroke='url(%23g)' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") 2 2, default;
  --cur-on: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23fffbe6'/%3E%3Cstop offset='.45' stop-color='%23f0c978'/%3E%3Cstop offset='1' stop-color='%238a5e22'/%3E%3C/linearGradient%3E%3CradialGradient id='h'%3E%3Cstop offset='0' stop-color='%23ffe2a0' stop-opacity='.9'/%3E%3Cstop offset='1' stop-color='%23ffe2a0' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='4' cy='4' r='4' fill='url(%23h)'/%3E%3Cpath d='M3 3 L13.5 8 L22 20.5 L20.5 22 L8 13.5 Z' fill='url(%23g)' stroke='%23140d05' stroke-width='1' stroke-linejoin='round'/%3E%3Ccircle cx='24' cy='24' r='3.3' fill='none' stroke='%23140d05' stroke-width='3'/%3E%3Ccircle cx='24' cy='24' r='3.3' fill='none' stroke='url(%23g)' stroke-width='1.6'/%3E%3C/svg%3E") 3 3, pointer;
}
body[data-page="story"], body[data-page="story"] * { cursor: var(--cur); }
body[data-page="story"] :is(a, button, [role="button"], .st-spot, [data-tch], [data-tgo], .vn-act.is-on) { cursor: var(--cur-on); }
html.is-cursor-idle, html.is-cursor-idle * { cursor: none !important; }

/* 点下去：尖端漾开一圈金色涟漪 */
.cur-ripple { position: fixed; z-index: 9999; width: 34px; height: 34px; margin: -17px 0 0 -17px; border-radius: 50%; border: 1px solid rgba(240, 210, 140, .85); box-shadow: 0 0 10px rgba(240, 200, 120, .45); pointer-events: none; animation: curRipple .6s cubic-bezier(.2, .7, .3, 1) forwards; }
@keyframes curRipple { from { transform: scale(.15); opacity: 1; } to { transform: scale(1); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .cur-ripple { display: none; } }
