/*! 世界历史沙盘 · © 2026 保留所有权利 All rights reserved.
 * 本文件为专有软件，未经书面许可不得复制、分发、修改或用于衍生作品。
 * 内容（疆域/朝代/事件/导览/词条）同受著作权保护。
 * build 20261101-55d755
 */
:root{ --pux-gold:#f2c445; --pux-gold-l:#ffe7a0; --pux-gold-d:#a86e17; --pux-ink:#fff7e2; --pux-bg:#1b140c; --pux-bg2:#2a1e10; }
html.pux-lock, html.pux-lock body{ overflow:hidden }
@keyframes pux-ring{ 0%{ box-shadow:0 0 0 0 rgba(242,196,69,.85), 0 0 0 0 rgba(242,196,69,.45) } 70%{ box-shadow:0 0 0 12px rgba(242,196,69,0), 0 0 22px 6px rgba(242,196,69,.35) } 100%{ box-shadow:0 0 0 0 rgba(242,196,69,0), 0 0 0 0 rgba(242,196,69,0) } }
@keyframes pux-bounce{ 0%,100%{ transform:translateY(0) scale(1) } 20%{ transform:translateY(-3px) scale(1.08) } 40%{ transform:translateY(0) scale(1) } 55%{ transform:translateY(-1.5px) scale(1.04) } }
@keyframes pux-shine{ 0%{ background-position:-120% 0 } 60%,100%{ background-position:220% 0 } }
.pux-glow#m2-pro-pill, .pux-glow#m2-acct-btn{ animation:pux-ring 1.3s ease-out 4, pux-bounce 1.3s ease-in-out 4; position:relative; overflow:hidden; border-color:var(--pux-gold)!important }
.pux-glow#m2-pro-pill::after, .pux-glow#m2-acct-btn::after{ content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
background:linear-gradient(105deg,transparent 30%,rgba(255,240,190,.75) 50%,transparent 70%) no-repeat; background-size:60% 100%; animation:pux-shine 1.3s ease-in-out 4 }
#acctchip.pux-glow{ animation:pux-ring 1.3s ease-out 4; border-color:var(--pux-gold)!important }
#acctchip.pux-glow .lvb{ animation:pux-bounce 1.3s ease-in-out 4; position:relative; overflow:hidden; border-color:var(--pux-gold); color:#2a1a06; background:linear-gradient(#ffe7a0,#e3b247) }
#acctchip.pux-glow .lvb::after{ content:""; position:absolute; inset:0; background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.8) 50%,transparent 70%) no-repeat; background-size:60% 100%; animation:pux-shine 1.3s ease-in-out 4 }
#acctchip .lvb{ cursor:help }
#acctchip .lvb-guest{ background:transparent; border:1px dashed currentColor; opacity:.85 }
.pux-hint{ position:fixed; z-index:99991; max-width:min(300px, calc(100vw - 16px)); padding:9px 13px; border-radius:12px; cursor:pointer;
background:linear-gradient(#2c2011,#1b140c); color:var(--pux-ink); border:1px solid rgba(242,196,69,.7); box-shadow:0 10px 28px rgba(0,0,0,.4);
font:700 13.5px/1.45 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif; animation:pux-in .32s cubic-bezier(.2,.9,.3,1.3) both }
.pux-hint::before{ content:""; position:absolute; top:-6px; left:calc(var(--ax,50%) - 6px); width:11px; height:11px; transform:rotate(45deg);
background:#2c2011; border-left:1px solid rgba(242,196,69,.7); border-top:1px solid rgba(242,196,69,.7) }
.pux-hint.out{ opacity:0; transform:translateY(-4px); transition:.25s }
@keyframes pux-in{ from{ opacity:0; transform:translateY(-6px) scale(.96) } to{ opacity:1; transform:none } }
#pux-pop{ position:fixed; z-index:99992; width:min(360px, calc(100vw - 16px)); overflow:auto; overscroll-behavior:contain; padding:14px 14px 12px; border-radius:16px;
background:radial-gradient(120% 80% at 50% 0%,#3a2a12 0%,#1b140c 62%); color:var(--pux-ink); border:1px solid rgba(242,196,69,.6);
box-shadow:0 18px 48px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,231,160,.18);
font:14px/1.5 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif; opacity:0; transform:translateY(-6px) scale(.98); transition:opacity .18s, transform .22s cubic-bezier(.2,.9,.3,1.2) }
#pux-pop.on{ opacity:1; transform:none }
#pux-pop .pux-pop-h{ display:flex; align-items:center; gap:10px; padding:0 0 10px; border-bottom:1px solid rgba(242,196,69,.22); margin-bottom:6px }
#pux-pop .pux-pop-h > div{ flex:1; min-width:0 }
#pux-pop .pux-pop-h b{ display:block; font-size:16px; color:var(--pux-gold-l); letter-spacing:.02em }
#pux-pop .pux-pop-h small{ display:block; font-size:12.5px; color:#d8c6a0; margin-top:1px }
#pux-pop .pux-x{ flex:0 0 auto; width:30px; height:30px; border-radius:50%; border:0; background:rgba(255,255,255,.06); color:#d8c6a0; display:grid; place-items:center; cursor:pointer }
#pux-pop .pux-crown-svg{ filter:drop-shadow(0 2px 6px rgba(242,196,69,.45)); flex:0 0 auto }
.pux-perks{ list-style:none; margin:0; padding:0 }
.pux-perks li{ display:flex; gap:10px; align-items:flex-start; padding:7px 2px; border-bottom:1px dashed rgba(242,196,69,.12); animation:pux-in .35s both; animation-delay:calc(var(--i) * 45ms) }
.pux-perks li:last-child{ border-bottom:0 }
.pux-perks .pi{ flex:0 0 30px; height:30px; border-radius:9px; display:grid; place-items:center; color:var(--pux-gold); background:rgba(242,196,69,.12); border:1px solid rgba(242,196,69,.25) }
.pux-perks li > span:nth-child(2){ flex:1; min-width:0 }
.pux-perks b{ display:block; font-size:14px; color:#fff1cc }
.pux-perks small{ display:block; font-size:12.5px; line-height:1.45; color:#cdbb95 }
.pux-perks .ok{ color:#7fe3a4; padding-top:5px }
.pux-cta{ display:flex; align-items:center; justify-content:center; gap:8px; width:100%; margin-top:10px; padding:11px 16px; border-radius:999px; cursor:pointer;
border:1px solid #6e420a; color:#2a1a06; font:800 15px/1 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif; letter-spacing:.04em;
background:linear-gradient(#fff0b8,#f2c445 45%,#c98d23); box-shadow:0 6px 18px rgba(242,196,69,.35), inset 0 1px 0 rgba(255,255,255,.7) }
.pux-cta:hover{ filter:brightness(1.06) }
.pux-cta:focus-visible{ outline:3px solid #fff1cc; outline-offset:2px }
.pux-cta.ghost{ background:transparent; color:var(--pux-gold-l); border-color:rgba(242,196,69,.55); box-shadow:none }
.pux-cta.sm{ width:auto; margin:0; padding:8px 16px; font-size:14px }
.pux-cta .pux-crown-svg{ filter:none }
.pux-fine{ margin:8px 2px 0; font-size:12px; line-height:1.5; color:#b8a684 }
#pux-cel{ position:fixed; inset:0; z-index:100000; display:grid; place-items:center; padding:16px; background:rgba(8,6,3,0); transition:background .5s }
#pux-cel.on{ background:rgba(8,6,3,.78) }
#pux-cel .pux-fw{ position:absolute; inset:0; width:100%; height:100%; pointer-events:none }
#pux-cel .pux-card{ position:relative; width:min(440px, 100%); max-height:calc(100vh - 32px); overflow:auto; text-align:center; padding:26px 24px 20px; border-radius:22px;
background:radial-gradient(120% 90% at 50% 0%,#4a3414 0%,#1d150b 60%); color:var(--pux-ink); border:1px solid rgba(242,196,69,.7);
box-shadow:0 30px 80px rgba(0,0,0,.6), 0 0 0 6px rgba(242,196,69,.08), inset 0 1px 0 rgba(255,231,160,.25);
font:15px/1.55 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif; opacity:0; transform:scale(.85) translateY(14px); transition:opacity .4s .15s, transform .55s .15s cubic-bezier(.2,.9,.25,1.25) }
#pux-cel.on .pux-card{ opacity:1; transform:none }
#pux-cel .pux-rays{ position:absolute; left:50%; top:96px; width:420px; height:420px; margin:-210px 0 0 -210px; pointer-events:none; opacity:.55;
background:repeating-conic-gradient(from 0deg, rgba(255,215,106,.22) 0deg 9deg, transparent 9deg 22deg);
-webkit-mask:radial-gradient(circle, #000 18%, transparent 62%); mask:radial-gradient(circle, #000 18%, transparent 62%); animation:pux-spin 18s linear infinite }
@keyframes pux-spin{ to{ transform:rotate(360deg) } }
#pux-cel .pux-crown{ position:relative; display:inline-block; margin:2px 0 6px; filter:drop-shadow(0 8px 18px rgba(242,196,69,.55)); animation:pux-drop .9s .35s cubic-bezier(.2,.9,.25,1.35) both, pux-float 3.2s 1.3s ease-in-out infinite }
@keyframes pux-drop{ 0%{ opacity:0; transform:translateY(-120px) rotate(-18deg) scale(.6) } 70%{ opacity:1; transform:translateY(6px) rotate(4deg) scale(1.04) } 100%{ opacity:1; transform:none } }
@keyframes pux-float{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-6px) } }
#pux-cel .pux-crown svg{ display:block }
#pux-cel h2{ position:relative; margin:4px 0 2px; font-size:26px; letter-spacing:.06em; color:var(--pux-gold-l); text-shadow:0 2px 14px rgba(242,196,69,.4) }
#pux-cel .pux-lead{ position:relative; margin:0 0 8px; font-size:16px; color:#f3e2bd }
#pux-cel .pux-lead b{ color:var(--pux-gold) }
#pux-cel .pux-no{ position:relative; display:inline-block; margin:2px 0 10px; padding:6px 16px; border-radius:999px; font-size:15px; color:#fff1cc;
background:rgba(242,196,69,.12); border:1px solid rgba(242,196,69,.5) }
#pux-cel .pux-num{ font-size:24px; color:var(--pux-gold); font-variant-numeric:tabular-nums; margin:0 2px }
#pux-cel .pux-sub{ position:relative; margin:0 0 14px; font-size:13.5px; color:#cdbb95 }
#pux-cel .pux-btns{ position:relative; display:grid; gap:8px }
#pux-cel .pux-btns .pux-cta{ margin:0 }
#pux-cel.leaving{ pointer-events:none }
#pux-cel.gone{ opacity:0; transition:opacity .3s }
.pux-fly{ pointer-events:none; filter:drop-shadow(0 6px 14px rgba(242,196,69,.6)); transform-origin:50% 50% }
.pux-fly svg{ width:100%!important; height:100%!important }
@keyframes pux-land{ 0%{ box-shadow:0 0 0 0 rgba(242,196,69,.95) } 100%{ box-shadow:0 0 0 18px rgba(242,196,69,0) } }
@keyframes pux-pop2{ 0%{ transform:scale(1) } 30%{ transform:scale(1.25) } 60%{ transform:scale(.95) } 100%{ transform:scale(1) } }
.pux-land{ animation:pux-land .9s ease-out 2 }
.pux-land .av, .pux-land .fi, .pux-land .m2-crown{ animation:pux-pop2 .7s ease-out }
#pux-tour{ position:fixed; inset:0; z-index:99995; opacity:0; transition:opacity .22s }
#pux-tour.on{ opacity:1 }
#pux-tour .pux-hole{ position:fixed; border-radius:14px; cursor:pointer; box-shadow:0 0 0 200vmax rgba(8,6,3,.66); transition:left .35s cubic-bezier(.3,.9,.3,1), top .35s cubic-bezier(.3,.9,.3,1), width .35s, height .35s }
#pux-tour .pux-hole::before{ content:""; position:absolute; inset:-3px; border-radius:16px; border:2px solid var(--pux-gold); animation:pux-ring 1.4s ease-out infinite }
#pux-tour .pux-bub{ position:fixed; width:min(310px, calc(100vw - 16px)); padding:12px 14px 12px; border-radius:14px;
background:linear-gradient(#2e2112,#1b140c); color:var(--pux-ink); border:1px solid rgba(242,196,69,.7); box-shadow:0 14px 40px rgba(0,0,0,.5);
font:14px/1.55 -apple-system,"PingFang SC","Microsoft YaHei",sans-serif; transition:left .3s, top .3s }
#pux-tour .pux-bub.pop{ animation:pux-in .32s cubic-bezier(.2,.9,.3,1.3) both }
#pux-tour .pux-bub::before{ content:""; position:absolute; width:11px; height:11px; transform:rotate(45deg); background:#2a1e10; border:1px solid rgba(242,196,69,.7) }
#pux-tour .pux-bub[data-side="below"]::before{ top:-6px; left:calc(var(--ax) - 6px); border-right:0; border-bottom:0; background:#2e2112 }
#pux-tour .pux-bub[data-side="above"]::before{ bottom:-6px; left:calc(var(--ax) - 6px); border-left:0; border-top:0; background:#1b140c }
#pux-tour .pux-bub[data-side="right"]::before{ left:-6px; top:calc(var(--ay) - 6px); border-right:0; border-top:0 }
#pux-tour .pb-h{ display:flex; align-items:center; gap:8px; margin-bottom:4px }
#pux-tour .pb-h .pi{ width:30px; height:30px; border-radius:9px; display:grid; place-items:center; color:var(--pux-gold); background:rgba(242,196,69,.14); border:1px solid rgba(242,196,69,.3) }
#pux-tour .pb-h b{ flex:1; font-size:16px; color:var(--pux-gold-l) }
#pux-tour .pb-k{ font-size:12px; color:#b8a684; font-variant-numeric:tabular-nums }
#pux-tour p{ margin:2px 0 10px; color:#e9d9b4; font-size:13.5px }
#pux-tour .pb-f{ display:flex; align-items:center; justify-content:space-between; gap:10px }
#pux-tour .pb-skip{ border:0; background:none; color:#b8a684; font:600 13px/1 inherit; padding:8px 4px; cursor:pointer }
@media (prefers-reduced-motion: reduce){
.pux-glow#m2-pro-pill, .pux-glow#m2-acct-btn, #acctchip.pux-glow, #acctchip.pux-glow .lvb, .pux-land, .pux-land *{ animation:none!important; box-shadow:0 0 0 3px rgba(242,196,69,.75)!important }
.pux-glow::after, #acctchip.pux-glow .lvb::after, #pux-cel .pux-rays, #pux-tour .pux-hole::before{ animation:none!important }
#pux-cel .pux-crown{ animation:none } #pux-cel .pux-card, #pux-pop{ transition:opacity .2s }
.pux-perks li, .pux-hint, #pux-tour .pux-bub.pop{ animation:none }
}