/* ===== PG游艺 共享样式 /assets/site.css ===== */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--head-h) + 18px);}
body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol{margin:0;}
ul,ol{padding:0;list-style:none;}
img,svg{display:block;max-width:100%;}
button,input,select,textarea{font:inherit;color:inherit;}
button{background:none;border:0;cursor:pointer;}
a{color:inherit;text-decoration:none;}
table{border-collapse:collapse;width:100%;}
[hidden]{display:none !important;}

:root{
  --ink-0:#060A1E;
  --ink-1:#0B1030;
  --ink-2:#141A45;
  --ink-3:#1B2260;
  --violet:#7B4DFF;
  --violet-soft:#B79CFF;
  --cyan:#35E6D0;
  --gold:#FFC46B;
  --paper:#E8ECFF;
  --muted:#A6A9D4;
  --coral:#FF7A6B;
  --line:rgba(183,156,255,.22);
  --line-strong:rgba(183,156,255,.45);
  --font-sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC","Noto Sans SC",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --font-mono:"JetBrains Mono","SFMono-Regular",Menlo,Consolas,"Liberation Mono","Courier New",monospace;
  --head-h:62px;
  --rail-w:0px;
  --radius:4px;
  --max-w:1180px;
  --max-w-wide:1500px;
  --ease:cubic-bezier(.22,.61,.36,1);
}
@media (min-width:768px){:root{--head-h:72px;}}
@media (min-width:1200px){:root{--head-h:76px;--rail-w:56px;}}

body{
  background-color:var(--ink-1);
  background-image:
    radial-gradient(1100px 620px at 84% -12%,rgba(123,77,255,.32),rgba(11,16,48,0) 62%),
    radial-gradient(900px 520px at -8% 16%,rgba(53,230,208,.14),rgba(11,16,48,0) 60%),
    radial-gradient(760px 420px at 52% 108%,rgba(255,196,107,.10),rgba(11,16,48,0) 66%),
    linear-gradient(180deg,#0B1030 0%,#0A0E28 56%,#060A1E 100%);
  background-repeat:no-repeat;
  color:var(--paper);
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.85;
  min-height:100vh;
  padding-top:var(--head-h);
  padding-left:var(--rail-w);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
::selection{background:rgba(123,77,255,.55);color:#fff;}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:2px;}

h1,h2,h3,h4{font-weight:800;line-height:1.25;color:#fff;letter-spacing:-.01em;}
h1{font-size:clamp(30px,4.6vw,58px);letter-spacing:-.02em;text-shadow:0 0 26px rgba(123,77,255,.45);}
h2{font-size:clamp(23px,2.6vw,34px);}
h3{font-size:clamp(18px,1.6vw,22px);}
h4{font-size:clamp(16px,1.3vw,18px);}
strong{color:#fff;font-weight:700;}
.mono{font-family:var(--font-mono);letter-spacing:.08em;font-variant-numeric:tabular-nums;}

.container{width:100%;max-width:var(--max-w);margin-inline:auto;padding-inline:clamp(16px,4vw,40px);}
.container--wide{max-width:var(--max-w-wide);}
.lede{font-size:clamp(16px,1.4vw,19px);line-height:1.9;color:var(--paper);max-width:62ch;}

.index-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan);}
.index-tag::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,var(--violet),var(--cyan));flex:none;}

.glow-line{height:1px;border:0;background:linear-gradient(90deg,rgba(123,77,255,0),rgba(123,77,255,.85) 18%,rgba(53,230,208,.85) 62%,rgba(53,230,208,0));margin:clamp(22px,3vw,38px) 0;}
.note-strip{border-left:2px solid var(--cyan);padding:6px 0 6px 14px;color:var(--muted);font-size:13.5px;line-height:1.8;background:linear-gradient(90deg,rgba(53,230,208,.08),rgba(53,230,208,0) 72%);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border:1px solid var(--line-strong);border-radius:999px;font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--paper);background:rgba(123,77,255,.14);transition:transform .2s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),color .25s,border-color .25s;}
.btn:hover{transform:translateY(-1px);}
.btn--gold{background:linear-gradient(180deg,#FFD79B,#FFB94E);color:#2A1B02;border-color:rgba(255,196,107,.9);box-shadow:0 10px 30px -14px rgba(255,196,107,.9);}
.btn--gold:hover{box-shadow:0 16px 36px -12px rgba(255,196,107,1);}
.btn--ghost{background:rgba(53,230,208,.08);border-color:rgba(53,230,208,.5);color:var(--cyan);}
.btn--ghost:hover{background:rgba(53,230,208,.16);box-shadow:0 12px 30px -18px rgba(53,230,208,.9);}
.btn--quiet{background:transparent;border-color:var(--line);color:var(--muted);}
.btn--quiet:hover{color:var(--paper);border-color:var(--line-strong);}
.btn--block{width:100%;}

.panel{position:relative;background:linear-gradient(180deg,rgba(20,26,69,.94),rgba(20,26,69,.72));border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,2.2vw,26px);box-shadow:0 30px 60px -46px rgba(0,0,0,.95);}
.panel::after{content:"";position:absolute;top:6px;right:6px;width:8px;height:8px;border-top:1px solid var(--violet-soft);border-right:1px solid var(--violet-soft);opacity:.6;}
.panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--line);}
.panel__title{font-size:15px;font-weight:700;letter-spacing:.05em;color:var(--paper);}
.panel__body{font-size:15px;}

.tag{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border:1px solid rgba(183,156,255,.5);border-radius:2px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--violet-soft);background:rgba(123,77,255,.12);}
.tag--live{color:var(--cyan);border-color:rgba(53,230,208,.55);background:rgba(53,230,208,.1);}
.tag--gold{color:var(--gold);border-color:rgba(255,196,107,.6);background:rgba(255,196,107,.1);}

.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:clamp(18px,2.4vw,30px);}
.section-head__title{font-size:clamp(20px,2.2vw,28px);font-weight:800;}
.section-head__meta{font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;color:var(--muted);}

.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:rgba(20,26,69,.55);}
.data-table{width:100%;min-width:560px;font-size:14px;}
.data-table th{font-family:var(--font-mono);font-weight:500;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);text-align:left;padding:14px 16px;border-bottom:1px solid var(--line-strong);white-space:nowrap;background:rgba(11,16,48,.6);}
.data-table td{padding:14px 16px;border-bottom:1px solid rgba(183,156,255,.12);color:var(--paper);vertical-align:top;}
.data-table tbody tr:hover td{background:rgba(123,77,255,.12);}
.data-table tbody tr:last-child td{border-bottom:0;}

.breadcrumb{margin:clamp(18px,2.4vw,28px) 0;}
.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;color:var(--muted);}
.breadcrumb__item{display:inline-flex;align-items:center;gap:8px;}
.breadcrumb__link{color:var(--muted);border-bottom:1px solid transparent;transition:color .2s,border-color .2s;}
.breadcrumb__link:hover{color:var(--cyan);border-bottom-color:var(--cyan);}
.breadcrumb__sep{color:rgba(166,169,212,.5);}
.breadcrumb__item[aria-current="page"]{color:var(--gold);}

.media-frame{position:relative;overflow:hidden;aspect-ratio:16/9;border:1px solid var(--line-strong);border-radius:var(--radius);background:linear-gradient(135deg,rgba(123,77,255,.26),rgba(53,230,208,.16) 55%,rgba(255,196,107,.12));}
.media-frame::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(232,236,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(232,236,255,.08) 1px,transparent 1px);background-size:38px 38px;opacity:.55;pointer-events:none;}
.media-frame__img{width:100%;height:100%;object-fit:cover;}
.media-frame__caption{position:absolute;left:0;bottom:0;padding:7px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--paper);background:rgba(6,10,30,.78);border-top:1px solid var(--line-strong);}
.media-frame--wide{aspect-ratio:21/9;}
.media-frame--tall{aspect-ratio:3/4;}
.media-frame--square{aspect-ratio:1/1;}
.media-frame--stack{box-shadow:-12px 12px 0 -1px rgba(20,26,69,.92),-13px 13px 0 0 rgba(123,77,255,.4);}

.reveal{opacity:0;transform:translateY(14px);transition:opacity .55s var(--ease),transform .55s var(--ease);}
.reveal.is-in{opacity:1;transform:none;}
[data-section]{scroll-margin-top:calc(var(--head-h) + 18px);}
[data-section-link].is-active{color:var(--gold);}

/* ===== 页头 ===== */
.skip-link{position:fixed;top:8px;left:8px;z-index:200;transform:translateY(-180%);background:var(--gold);color:#2A1B02;font-weight:700;font-size:14px;padding:10px 18px;border-radius:999px;transition:transform .2s var(--ease);}
.skip-link:focus{transform:translateY(0);}

.site-head{position:fixed;top:0;left:0;right:0;z-index:90;background:linear-gradient(180deg,rgba(6,10,30,.97),rgba(11,16,48,.92));backdrop-filter:blur(10px);border-bottom:1px solid rgba(123,77,255,.35);box-shadow:0 18px 50px -32px rgba(53,230,208,.65);}
.pg-progress{position:absolute;top:0;left:0;right:0;height:2px;background:rgba(123,77,255,.18);overflow:hidden;}
.pg-progress__bar{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--violet),var(--cyan) 62%,var(--gold));box-shadow:0 0 12px rgba(53,230,208,.9);}
.site-head__inner{max-width:var(--max-w-wide);margin-inline:auto;min-height:var(--head-h);padding-inline:clamp(12px,2.4vw,30px);display:flex;align-items:center;gap:clamp(10px,1.6vw,26px);border-left:1px solid rgba(123,77,255,.2);border-right:1px solid rgba(123,77,255,.2);}

.brand{display:inline-flex;align-items:center;gap:10px;flex:none;}
.brand__glyph{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(53,230,208,.55);border-radius:3px;font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--cyan);background:linear-gradient(140deg,rgba(123,77,255,.35),rgba(6,10,30,.6));box-shadow:0 0 18px -4px rgba(53,230,208,.7);}
.brand__text{display:flex;flex-direction:column;gap:1px;}
.brand__name{font-size:16px;font-weight:800;line-height:1.2;color:#fff;letter-spacing:.02em;}
.brand__domain{font-size:10px;line-height:1.3;color:var(--muted);letter-spacing:.1em;}

.nav-band{flex:1 1 auto;display:flex;justify-content:center;align-items:center;}
.nav-band__list{display:flex;align-items:stretch;}
.nav-band__item{display:flex;}
.nav-link{position:relative;display:inline-flex;align-items:center;padding:9px clamp(7px,.95vw,15px);font-size:13.5px;letter-spacing:.06em;color:var(--muted);border-left:1px solid rgba(123,77,255,.18);transition:color .2s,background .2s;}
.nav-band__item:last-child .nav-link{border-right:1px solid rgba(123,77,255,.18);}
.nav-link::after{content:"";position:absolute;left:14%;right:14%;bottom:3px;height:1px;background:linear-gradient(90deg,var(--violet),var(--cyan));transform:scaleX(0);transform-origin:0 50%;transition:transform .28s var(--ease);}
.nav-link:hover{color:var(--paper);background:rgba(123,77,255,.12);}
.nav-link:hover::after{transform:scaleX(1);}
.nav-link[aria-current="page"]{color:var(--gold);background:rgba(255,196,107,.09);}
.nav-link[aria-current="page"]::after{transform:scaleX(1);background:linear-gradient(90deg,var(--gold),var(--cyan));}
.nav-band__foot{display:none;}

.head-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none;}
.head-cta{display:none;align-items:center;padding:8px 16px;border:1px solid rgba(53,230,208,.55);border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.05em;color:var(--cyan);background:rgba(53,230,208,.08);transition:background .25s,color .25s,border-color .25s,box-shadow .25s;}
.head-cta:hover{color:#2A1B02;background:linear-gradient(180deg,#FFD79B,#FFB94E);border-color:var(--gold);box-shadow:0 12px 30px -14px rgba(255,196,107,.95);}

.version-switch{position:relative;}
.version-switch__btn{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--line-strong);border-radius:3px;background:rgba(20,26,69,.8);color:var(--paper);font-size:12px;letter-spacing:.05em;transition:border-color .2s,box-shadow .25s;}
.version-switch__btn:hover{border-color:var(--violet-soft);box-shadow:0 0 0 1px rgba(183,156,255,.35),0 10px 26px -18px rgba(183,156,255,.9);}
.version-switch__code{font-size:13px;font-weight:700;color:var(--gold);}
.version-switch__label{color:var(--muted);display:none;}
.version-switch__caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--cyan);}
.version-switch__panel{position:absolute;top:calc(100% + 10px);right:0;min-width:216px;display:flex;flex-direction:column;gap:2px;padding:8px;background:linear-gradient(180deg,#141A45,#0E1338);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 28px 60px -30px rgba(0,0,0,.95);z-index:95;}
.version-switch__item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:3px;font-size:13.5px;color:var(--paper);transition:background .2s,color .2s;}
.version-switch__item:hover{background:rgba(123,77,255,.24);color:#fff;}
.version-switch__item .mono{font-size:11px;color:var(--cyan);}

.nav-toggle{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line-strong);border-radius:3px;background:rgba(20,26,69,.8);color:var(--paper);font-size:12px;letter-spacing:.1em;}
.nav-toggle__bars{display:inline-flex;flex-direction:column;justify-content:space-between;width:18px;height:12px;}
.nav-toggle__bar{display:block;height:1px;background:var(--cyan);box-shadow:0 0 8px rgba(53,230,208,.8);}
.nav-toggle__text{color:var(--muted);}
.nav-toggle:hover{border-color:var(--violet-soft);}

.site-rail{display:none;}

/* ===== 页脚 ===== */
.site-foot{position:relative;margin-top:clamp(48px,8vw,120px);padding:clamp(38px,6vw,76px) 0 clamp(22px,4vw,38px);background:linear-gradient(180deg,rgba(6,10,30,.55),#060A1E 42%);border-top:1px solid rgba(123,77,255,.32);}
.site-foot__glow{position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(123,77,255,0),rgba(123,77,255,.95) 20%,rgba(53,230,208,.95) 70%,rgba(53,230,208,0));box-shadow:0 0 18px rgba(53,230,208,.55);}
.site-foot__inner{position:relative;z-index:1;}
.foot-grid{display:grid;grid-template-columns:1fr;gap:clamp(24px,3vw,40px);}
.foot-col{min-width:0;}
.foot-col__title{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);padding-bottom:10px;margin-bottom:14px;border-bottom:1px solid var(--line);}
.foot-brand{font-size:20px;font-weight:800;color:#fff;letter-spacing:.02em;}
.foot-note{margin-top:10px;font-size:13px;line-height:1.75;color:var(--muted);}
.foot-note--mono{font-family:var(--font-mono);letter-spacing:.08em;color:rgba(166,169,212,.85);}
.foot-list{display:flex;flex-direction:column;gap:9px;}
.foot-link{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);border-bottom:1px solid transparent;transition:color .2s,border-color .2s;}
.foot-link:hover{color:var(--gold);border-bottom-color:rgba(255,196,107,.55);}
.foot-contact{display:flex;flex-direction:column;}
.foot-contact__row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 0;border-bottom:1px dashed rgba(183,156,255,.16);}
.foot-contact__row--block{flex-direction:column;align-items:flex-start;gap:4px;border-bottom:0;}
.foot-contact__key{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;color:var(--muted);flex:none;}
.foot-contact__val{font-size:13.5px;color:var(--paper);overflow-wrap:anywhere;}
.copy-btn{margin-left:auto;padding:3px 10px;border:1px solid var(--line);border-radius:999px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--muted);transition:color .2s,border-color .2s,background .2s;}
.copy-btn:hover{color:var(--cyan);border-color:rgba(53,230,208,.6);background:rgba(53,230,208,.1);}
.copy-btn.is-done{color:var(--gold);border-color:rgba(255,196,107,.7);background:rgba(255,196,107,.14);}
.foot-legal{margin-top:clamp(26px,3vw,40px);padding-top:18px;border-top:1px solid var(--line);}
.foot-legal__list{display:flex;flex-wrap:wrap;gap:8px 22px;}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(183,156,255,.14);}
.foot-bottom__text{font-size:12px;line-height:1.7;color:rgba(166,169,212,.78);}

/* ===== 响应式 ===== */
@media (min-width:640px){
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1024px){
  .foot-grid{grid-template-columns:1.35fr 1fr 1fr 1.25fr;}
}
@media (min-width:1100px){
  .head-cta{display:inline-flex;}
  .nav-band__foot{display:none;}
  .nav-toggle{display:none;}
}
@media (min-width:1200px){
  .site-rail{display:flex;flex-direction:column;align-items:center;gap:16px;position:fixed;top:var(--head-h);left:0;bottom:0;width:var(--rail-w);padding:28px 0;border-right:1px solid rgba(123,77,255,.22);background:linear-gradient(180deg,rgba(6,10,30,.85),rgba(6,10,30,.35));z-index:80;pointer-events:none;}
  .site-rail__label{writing-mode:vertical-rl;font-family:var(--font-mono);font-size:11px;letter-spacing:.36em;color:var(--muted);}
  .site-rail__line{flex:1 1 auto;width:1px;background:linear-gradient(180deg,var(--violet),var(--cyan),rgba(53,230,208,0));}
}
@media (min-width:1280px){
  .version-switch__label{display:inline;}
}
@media (max-width:1099px){
  .nav-band{position:fixed;top:var(--head-h);left:0;right:0;bottom:0;display:block;padding:22px clamp(16px,5vw,30px) 40px;background:linear-gradient(180deg,rgba(6,10,30,.99),rgba(11,16,48,.98));border-top:1px solid rgba(123,77,255,.35);overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .22s var(--ease),transform .22s var(--ease),visibility .22s;z-index:85;}
  .site-head[data-open] .nav-band{opacity:1;visibility:visible;transform:none;}
  .nav-band__list{display:block;}
  .nav-band__item{border-bottom:1px solid rgba(123,77,255,.22);}
  .nav-link{display:flex;width:100%;justify-content:flex-start;padding:16px 6px;font-size:16px;border-left:0;border-right:0 !important;}
  .nav-link::after{display:none;}
  .nav-link[aria-current="page"]{border-left:3px solid var(--gold);padding-left:14px;background:rgba(255,196,107,.08);}
  .nav-band__foot{display:block;margin-top:26px;}
}
@media (max-width:639px){
  .brand__domain{display:none;}
  .foot-contact__val{font-size:13px;}
}
@media (max-width:420px){
  .head-actions{gap:6px;}
  .version-switch__btn{padding:6px 9px;}
  .nav-toggle{padding:7px 9px;}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
  .reveal{opacity:1;transform:none;}
  .btn:hover{transform:none;}
}
