/* 国漫刷｜首页开场:按住盖章(2026-09-24 定稿,动画 3 + 音效 2 清脆)。
   显示规则由 splash-check.js 在 <head> 里同步决定:html.gm-nosplash 时整块不渲染。 */
html.gm-splash-open{overflow:hidden}
html.gm-nosplash #gm-splash{display:none}
#gm-splash{position:fixed;inset:0;z-index:99999;background:radial-gradient(238px circle at 50% 44%,rgba(254,44,85,.22),rgba(254,44,85,0)) #07070a;color:#f5f4f7;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;font-family:"SF Pro Display",-apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;transition:opacity .45s ease}
#gm-splash.gs-done{opacity:0;pointer-events:none}
#gm-splash *{box-sizing:border-box}
#gm-splash button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
#gm-splash button:focus-visible{outline:2px solid #fe2c55;outline-offset:2px}
.gs-canvas{position:absolute;inset:0;width:100%;height:100%}
/* 光晕改画在 #gm-splash 背景上:单独一个 560px 渐变元素在部分 Mac Chrome 的 GPU 合成下会被画成硬边暗红方块(2026-09-24 Marco 截图) */
.gs-glow{display:none}
#gm-splash .gs-sound{position:absolute;right:16px;top:calc(16px + env(safe-area-inset-top));z-index:3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(19,19,24,.7);border:1px solid #2c2c35;font-size:15px}
.gs-box{position:relative;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:0 24px;z-index:2}
.gs-ink{position:absolute;left:50%;top:88px;width:240px;height:240px;border-radius:50%;transform:translate(-50%,-50%) scale(0);border:2px solid rgba(246,196,83,.7);opacity:0;pointer-events:none}
.gs-ink.two{border-width:1px;border-color:rgba(254,44,85,.55)}
.gs-sealwrap{position:relative;width:176px;display:grid;place-items:center}
.gs-seal{grid-area:1/1;width:100%;height:auto;display:block;position:relative;z-index:1;will-change:transform;transform-origin:50% 60%;cursor:pointer;
  animation:gs-hover .7s cubic-bezier(.2,.8,.3,1) both;transition:transform 1.1s cubic-bezier(.2,.7,.3,1),filter 1.1s;filter:drop-shadow(0 30px 34px rgba(0,0,0,.6))}
.gs-shadow{grid-area:1/1;align-self:end;width:72%;height:16px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.75) 0%,rgba(0,0,0,0) 70%);transform:translateY(22px) scale(1.15);opacity:.55;pointer-events:none;transition:transform 1.1s cubic-bezier(.2,.7,.3,1),opacity 1.1s}
.gs-hint{font-size:12.5px;color:#8d8c97;letter-spacing:.12em;min-height:18px;opacity:0;animation:gs-rise .5s ease-out .6s both,gs-pulse 1.4s ease-in-out 1.1s infinite}
.gs-wordmark{margin:4px 0 0;font-size:44px;font-weight:900;letter-spacing:.14em;line-height:1;clip-path:inset(0 100% 0 0)}
.gs-wordmark span{color:#fe2c55}
.gs-tagline{margin:0;font-size:15px;color:#c9c8d0;letter-spacing:.24em;opacity:0}
.gs-cta{margin-top:22px;opacity:0;display:flex;flex-direction:column;align-items:center;gap:12px}
#gm-splash .gs-enter{display:inline-flex;align-items:center;justify-content:center;font-weight:700;border-radius:999px;padding:14px 44px;font-size:16px;color:#fff;background:#fe2c55;box-shadow:0 10px 26px rgba(254,44,85,.35);white-space:nowrap}
#gm-splash .gs-enter:hover{background:#cf1d44}
.gs-cta small{font-size:11.5px;color:#8d8c97}
.gs-social{display:flex;gap:10px;opacity:0}
.gs-ico{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff}
.gs-ico svg{width:19px;height:19px;fill:#fff}
.gs-tg{background:#2aa1da}.gs-x{background:#000;border:1px solid #333}
/* 按住 → 盖下 */
#gm-splash.gs-pressing .gs-seal{animation:none;transform:perspective(600px) rotateX(3deg) translateY(4px) scale(.96);filter:drop-shadow(0 3px 6px rgba(0,0,0,.7)) brightness(1.15)}
#gm-splash.gs-pressing .gs-shadow{transform:translateY(14px) scale(.9);opacity:.9}
#gm-splash.gs-stamped .gs-seal{animation:gs-stampdown .8s cubic-bezier(.2,.9,.3,1.2) both;transition:none;filter:url(#gsRough) saturate(1.08) contrast(1.05)}
#gm-splash.gs-stamped .gs-shadow{transform:translateY(16px) scale(.7);opacity:0;transition:transform .25s,opacity .25s}
#gm-splash.gs-stamped .gs-box{animation:gs-shake .5s ease-out both}
#gm-splash.gs-stamped .gs-ink{animation:gs-ink .9s ease-out both}
#gm-splash.gs-stamped .gs-ink.two{animation-delay:.12s}
#gm-splash.gs-stamped .gs-hint{animation:none;opacity:0}
#gm-splash.gs-stamped .gs-wordmark{animation:gs-reveal .6s cubic-bezier(.3,.8,.3,1) .35s both}
#gm-splash.gs-stamped .gs-tagline{animation:gs-rise .5s ease-out .95s both}
#gm-splash.gs-stamped .gs-cta{animation:gs-rise .5s ease-out 1.25s both}
#gm-splash.gs-stamped .gs-social{animation:gs-rise .5s ease-out 1.45s both}
@keyframes gs-hover{0%{transform:perspective(600px) rotateX(24deg) translateY(-90px) scale(1.2);opacity:0}100%{transform:perspective(600px) rotateX(18deg) translateY(-26px) scale(1.16);opacity:1}}
@keyframes gs-stampdown{0%{transform:perspective(600px) rotateX(3deg) translateY(4px) scale(.96)}14%{transform:perspective(600px) rotateX(0) translateY(10px) scale(1.07,.9)}32%{transform:perspective(600px) rotateX(0) translateY(5px) scale(.985,1.02)}50%{transform:translateY(7px) scale(1.01)}100%{transform:translateY(6px) scale(1)}}
@keyframes gs-shake{0%,100%{transform:none}15%{transform:translate(-6px,4px) rotate(-.4deg)}35%{transform:translate(6px,-3px) rotate(.4deg)}55%{transform:translate(-4px,-4px)}75%{transform:translate(3px,3px)}}
@keyframes gs-ink{0%{transform:translate(-50%,-50%) scale(0);opacity:.9}100%{transform:translate(-50%,-50%) scale(1.6);opacity:0}}
@keyframes gs-reveal{to{clip-path:inset(0 0 0 0)}}
@keyframes gs-rise{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:none}}
@keyframes gs-pulse{0%,100%{opacity:.5}50%{opacity:1}}
@media (min-width:900px){.gs-sealwrap{width:210px}.gs-ink{top:105px}.gs-wordmark{font-size:64px}.gs-tagline{font-size:17px}}
@media (prefers-reduced-motion:reduce){
  #gm-splash .gs-seal,#gm-splash .gs-ink,#gm-splash .gs-wordmark,#gm-splash .gs-tagline,#gm-splash .gs-cta,#gm-splash .gs-social,#gm-splash .gs-hint,#gm-splash .gs-box{animation:none!important;opacity:1!important;clip-path:none!important;transform:none!important}
  #gm-splash .gs-hint{display:none}
}
