/* =============================================================
   PG游艺 · 共享样式 /assets/site.css
   高原晨光 + 唐卡矿物色 · 刊头导航 / 框景 / 控制台状态面板
   ============================================================= */

/* ---------- 1. Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dt,dd,figure,blockquote,fieldset{margin:0}
ul,ol{padding:0;list-style:none}
img,svg,video{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
a{color:inherit;text-decoration:none}
table{border-collapse:collapse;width:100%}

/* ---------- 2. 变量 ---------- */
:root{
  --pg-gold:#E0A83C;
  --pg-gold-deep:#B8801F;
  --pg-red:#A3302A;
  --pg-indigo:#22405E;
  --pg-ink:#16202F;
  --pg-green:#6F8F5C;
  --pg-butter:#F2D89A;
  --pg-cream:#F8F4EC;
  --pg-text:#3D3B38;
  --pg-line:#C7C2B8;
  --pg-mute:#7D786F;
  --pg-glass:rgba(255,255,255,.14);
  --pg-glass-strong:rgba(255,255,255,.3);
  --pg-shadow:0 10px 30px rgba(22,32,47,.10);
  --pg-shadow-soft:0 2px 8px rgba(22,32,47,.06);
  --pg-font-head:"Source Han Sans Heavy","Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --pg-font-body:"Source Han Serif SC","Noto Serif SC",Georgia,"Songti SC","SimSun",serif;
  --pg-font-num:"Barlow Condensed","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
  --pg-font-anno:"Source Han Sans SC","Noto Sans SC","PingFang SC",system-ui,sans-serif;
  --pg-shell:1180px;
  --pg-rail:1320px;
  --pg-ease:cubic-bezier(.22,.61,.36,1);
}

/* ---------- 3. 基础排版 ---------- */
body{
  background:var(--pg-cream);
  color:var(--pg-text);
  font-family:var(--pg-font-body);
  font-size:17px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,h6{
  font-family:var(--pg-font-head);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.15;
  color:var(--pg-ink);
}
p a,.pg-text a,.pg-lede a{color:var(--pg-indigo);border-bottom:1px solid rgba(34,64,94,.32)}
p a:hover,.pg-text a:hover,.pg-lede a:hover{color:var(--pg-gold-deep);border-bottom-color:var(--pg-gold-deep)}
::selection{background:var(--pg-butter);color:var(--pg-ink)}
:focus-visible{outline:2px solid var(--pg-gold-deep);outline-offset:3px;border-radius:2px}
#main-content{display:block}
.pg-main{display:block}

/* ---------- 4. 跳过链接 ---------- */
.pg-skip{
  position:absolute;left:50%;top:-70px;transform:translateX(-50%);
  z-index:200;padding:11px 20px;border-radius:0 0 6px 6px;
  background:var(--pg-ink);color:var(--pg-cream);
  font-family:var(--pg-font-anno);font-size:13px;font-weight:600;letter-spacing:.08em;
  transition:top .2s var(--pg-ease);
}
.pg-skip:focus{top:0}

/* ---------- 5. 刊头导航 ---------- */
.pg-header{
  position:sticky;top:0;z-index:80;
  background:rgba(248,244,236,.92);
  -webkit-backdrop-filter:blur(12px) saturate(120%);
  backdrop-filter:blur(12px) saturate(120%);
  border-bottom:1px solid var(--pg-line);
  color:var(--pg-text);
}
.pg-header::before{
  content:"";position:absolute;top:0;left:0;right:0;height:6px;pointer-events:none;
  background-image:repeating-linear-gradient(90deg,var(--pg-gold-deep) 0 1px,transparent 1px 14px);
  opacity:.45;
}
.pg-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none}
.pg-progress__bar{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--pg-gold-deep),var(--pg-gold));transition:width .12s linear}

.pg-header__inner{max-width:var(--pg-rail);margin:0 auto;padding:0 clamp(16px,4vw,40px)}

.pg-header__rail{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px 0 0;max-height:58px;overflow:hidden;
  transition:max-height .3s var(--pg-ease),opacity .24s var(--pg-ease),padding .3s var(--pg-ease);
}
.pg-header__date{display:flex;align-items:center;gap:9px;color:var(--pg-mute)}
.pg-header__date .pg-num{font-size:15px;color:var(--pg-ink)}
.pg-header__rail-right{display:flex;align-items:center;gap:18px}

.pg-anno{font-family:var(--pg-font-anno);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--pg-mute)}
.pg-num{font-family:var(--pg-font-num);font-weight:600;letter-spacing:.04em;font-variant-numeric:tabular-nums}

.pg-util{display:flex;align-items:center;gap:16px}
.pg-util__link{
  font-family:var(--pg-font-anno);font-size:12px;letter-spacing:.08em;color:var(--pg-mute);
  padding-bottom:2px;border-bottom:1px solid transparent;
  transition:color .2s var(--pg-ease),border-color .2s var(--pg-ease);
}
.pg-util__link:hover{color:var(--pg-gold-deep);border-bottom-color:var(--pg-gold-deep)}

.pg-status-chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:4px 12px;border:1px solid rgba(224,168,60,.55);border-radius:999px;
  background:rgba(242,216,154,.38);color:#7A5410;
  font-family:var(--pg-font-anno);font-size:12px;font-weight:500;letter-spacing:.06em;
  white-space:nowrap;
}
.pg-status-chip .pg-num{font-size:14px;color:var(--pg-gold-deep)}
.pg-status-chip__dot{width:7px;height:7px;border-radius:50%;background:var(--pg-green);box-shadow:0 0 0 3px rgba(111,143,92,.18)}

.pg-masthead{
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;
  padding:8px 0 16px;
}
.pg-brand{grid-column:2;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.pg-brand__mark{
  font-family:var(--pg-font-head);font-weight:900;
  font-size:clamp(30px,4.6vw,46px);line-height:1;letter-spacing:-.02em;color:var(--pg-ink);
  transition:font-size .3s var(--pg-ease);
}
.pg-brand__sub{
  font-family:var(--pg-font-anno);font-size:12px;font-weight:500;
  letter-spacing:.18em;color:var(--pg-mute);
}
.pg-masthead__cta{grid-column:3;justify-self:end}

.pg-header__navbar{
  position:relative;display:flex;align-items:center;justify-content:center;
  border-top:1px solid rgba(199,194,184,.75);padding:0 0 10px;
}
.pg-nav{display:block}
.pg-nav__list{display:flex;justify-content:center;gap:clamp(14px,3vw,34px)}
.pg-nav__link{
  position:relative;display:inline-block;padding:13px 2px;
  font-family:var(--pg-font-anno);font-size:13.5px;font-weight:600;letter-spacing:.08em;
  color:var(--pg-text);transition:color .2s var(--pg-ease);
}
.pg-nav__link::after{
  content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;
  background:var(--pg-gold);transform:scaleX(0);transform-origin:center;
  transition:transform .25s var(--pg-ease);
}
.pg-nav__link:hover{color:var(--pg-gold-deep)}
.pg-nav__link:hover::after{transform:scaleX(1)}
.pg-nav__link[aria-current="page"]{color:var(--pg-indigo)}
.pg-nav__link[aria-current="page"]::after{transform:scaleX(1);background:var(--pg-red)}

.pg-nav-toggle{display:none;align-items:center;gap:9px;padding:9px 14px;border:1px solid var(--pg-line);border-radius:4px;background:transparent;font-family:var(--pg-font-anno);font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--pg-ink)}
.pg-nav-toggle__label{line-height:1}
.pg-nav-toggle__icon{position:relative;display:block;width:16px;height:10px}
.pg-nav-toggle__icon::before,.pg-nav-toggle__icon::after{
  content:"";position:absolute;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--pg-ink) 55%,var(--pg-gold) 55%);
  transition:transform .22s var(--pg-ease),top .22s var(--pg-ease),bottom .22s var(--pg-ease);
}
.pg-nav-toggle__icon::before{top:0}
.pg-nav-toggle__icon::after{bottom:0}
.pg-nav-toggle[aria-expanded="true"]{border-color:var(--pg-gold-deep);color:var(--pg-gold-deep)}
.pg-nav-toggle[aria-expanded="true"] .pg-nav-toggle__icon::before{top:4px;transform:rotate(45deg)}
.pg-nav-toggle[aria-expanded="true"] .pg-nav-toggle__icon::after{bottom:4px;transform:rotate(-45deg)}

/* 压缩状态：滚动后合并为一行细导航 */
.pg-header[data-compact] .pg-header__rail{max-height:0;padding-top:0;opacity:0;pointer-events:none}
.pg-header[data-compact] .pg-brand__mark{font-size:clamp(19px,2.4vw,23px)}
.pg-header[data-compact] .pg-brand__sub{display:none}
.pg-header[data-compact] .pg-brand{gap:0;flex-direction:row}
.pg-header[data-compact] .pg-masthead{padding:9px 0 5px}
.pg-header[data-compact] .pg-btn{padding:8px 13px;font-size:12px}
.pg-header[data-compact] .pg-header__navbar{padding-bottom:4px}
.pg-header[data-compact] .pg-nav__link{padding:8px 2px}

/* ---------- 6. 按钮 / 链接 ---------- */
.pg-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 20px;border:1px solid transparent;border-radius:4px;
  font-family:var(--pg-font-anno);font-size:13px;font-weight:600;letter-spacing:.08em;
  transition:transform .18s var(--pg-ease),background-color .18s var(--pg-ease),color .18s var(--pg-ease),border-color .18s var(--pg-ease);
}
.pg-btn--gold{background:var(--pg-gold);border-color:var(--pg-gold-deep);color:#2B1E06}
.pg-btn--gold:hover{background:var(--pg-gold-deep);color:#FFF9EC}
.pg-btn--ink{background:var(--pg-ink);border-color:var(--pg-ink);color:var(--pg-cream)}
.pg-btn--ink:hover{background:var(--pg-indigo);border-color:var(--pg-indigo)}
.pg-btn--outline{background:transparent;border-color:rgba(34,64,94,.38);color:var(--pg-indigo)}
.pg-btn--outline:hover{border-color:var(--pg-indigo);background:rgba(34,64,94,.06)}
.pg-btn:active{transform:translateY(1px)}

.pg-more{
  display:inline-flex;align-items:center;gap:8px;padding-bottom:3px;
  font-family:var(--pg-font-anno);font-size:13px;font-weight:600;letter-spacing:.08em;
  color:var(--pg-indigo);border-bottom:1px solid rgba(34,64,94,.3);
  transition:color .2s var(--pg-ease),border-color .2s var(--pg-ease);
}
.pg-more::after{content:"→";font-family:var(--pg-font-num)}
.pg-more:hover{color:var(--pg-gold-deep);border-bottom-color:var(--pg-gold-deep)}

/* ---------- 7. 容器 / 带状分区 ---------- */
.pg-shell{width:100%;max-width:var(--pg-shell);margin:0 auto;padding:0 clamp(16px,4vw,40px)}
.pg-section{padding:clamp(40px,7vw,96px) 0}
.pg-section--tight{padding:clamp(24px,4vw,48px) 0}
.pg-band{position:relative;padding:clamp(40px,7vw,96px) 0}
.pg-band--ink{background:var(--pg-ink);color:var(--pg-cream)}
.pg-band--indigo{background:var(--pg-indigo);color:var(--pg-cream)}
.pg-band--butter{background:rgba(242,216,154,.34)}
.pg-band--butter .pg-title,.pg-band--butter h1,.pg-band--butter h2{color:var(--pg-ink)}
.pg-band--ink h1,.pg-band--ink h2,.pg-band--ink h3,.pg-band--ink .pg-title,
.pg-band--indigo h1,.pg-band--indigo h2,.pg-band--indigo h3,.pg-band--indigo .pg-title{color:var(--pg-cream)}
.pg-band--ink .pg-lede,.pg-band--ink .pg-text,
.pg-band--indigo .pg-lede,.pg-band--indigo .pg-text{color:rgba(248,244,236,.78)}
.pg-band--ink .pg-note,.pg-band--ink .pg-anno,
.pg-band--indigo .pg-note,.pg-band--indigo .pg-anno{color:rgba(248,244,236,.6)}

/* ---------- 8. 文字层级 ---------- */
.pg-kicker{
  display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;
  font-family:var(--pg-font-anno);font-size:12px;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--pg-red);
}
.pg-kicker::before{content:"";width:26px;height:2px;background:var(--pg-red)}
.pg-title{margin:0 0 .55em;font-family:var(--pg-font-head);font-weight:900;letter-spacing:-.02em;line-height:1.08;color:var(--pg-ink)}
.pg-title--xl{font-size:clamp(44px,8vw,88px)}
.pg-title--lg{font-size:clamp(34px,5.4vw,64px)}
.pg-title--md{font-size:clamp(26px,3.6vw,40px)}
.pg-title--sm{font-size:clamp(20px,2.4vw,28px)}
.pg-lede{max-width:44ch;margin:0 0 1.4em;font-size:clamp(17px,1.6vw,20px);line-height:1.8;color:#4A4741}
.pg-text{max-width:42ch;margin:0 0 1.2em;font-size:17px;line-height:1.8}
.pg-text--wide{max-width:62ch}
.pg-note{margin:0;font-family:var(--pg-font-anno);font-size:13px;line-height:1.7;letter-spacing:.04em;color:var(--pg-mute)}
.pg-rule{
  height:9px;margin:clamp(20px,3vw,34px) 0;
  border-bottom:1px solid var(--pg-line);
  background-image:repeating-linear-gradient(90deg,var(--pg-line) 0 1px,transparent 1px 14px);
  background-size:auto 8px;background-position:0 100%;background-repeat:repeat-x;
}

/* ---------- 9. 栅格 ---------- */
.pg-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,2.4vw,28px)}
.pg-grid--2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,28px)}
.pg-grid--3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,28px)}

/* ---------- 10. 框景 ---------- */
.pg-frame{position:relative;border:2px solid var(--pg-ink);padding:clamp(22px,4vw,56px);background:rgba(255,255,255,.5)}
.pg-frame--gold{border-color:var(--pg-gold-deep)}
.pg-frame__label{
  position:absolute;top:-11px;left:clamp(20px,4vw,52px);padding:0 10px;
  background:var(--pg-cream);color:var(--pg-red);
  font-family:var(--pg-font-anno);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
}
.pg-frame--ticks::after{
  content:"";position:absolute;inset:-9px;pointer-events:none;
  --pg-ck:18px;--pg-cb:2px;
  background-image:
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep)),
    linear-gradient(var(--pg-gold-deep),var(--pg-gold-deep));
  background-repeat:no-repeat;
  background-size:
    var(--pg-ck) var(--pg-cb),var(--pg-ck) var(--pg-cb),
    var(--pg-ck) var(--pg-cb),var(--pg-ck) var(--pg-cb),
    var(--pg-cb) var(--pg-ck),var(--pg-cb) var(--pg-ck),
    var(--pg-cb) var(--pg-ck),var(--pg-cb) var(--pg-ck);
  background-position:
    left top,right top,left bottom,right bottom,
    left top,right top,left bottom,right bottom;
}

/* ---------- 11. 卡片 / 控制台面板 ---------- */
.pg-card{
  position:relative;padding:clamp(18px,2.4vw,26px);
  border:1px solid var(--pg-line);border-radius:6px;background:#FFFFFF;
  box-shadow:var(--pg-shadow-soft);
  transition:transform .2s var(--pg-ease),border-color .2s var(--pg-ease),box-shadow .2s var(--pg-ease);
}
.pg-card:hover{transform:translateY(-2px);border-color:var(--pg-gold-deep);box-shadow:var(--pg-shadow)}
.pg-card--glass{
  background:var(--pg-glass);border-color:rgba(255,255,255,.34);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
}
.pg-card--accent{border-left:3px solid var(--pg-red)}
.pg-card__title{margin:0 0 8px;font-family:var(--pg-font-head);font-weight:800;font-size:19px;line-height:1.35;color:var(--pg-ink)}
.pg-card__meta{margin:0 0 10px;font-family:var(--pg-font-anno);font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--pg-mute)}
.pg-card__body{margin:0;font-size:15.5px;line-height:1.7;color:#5A5650}

.pg-console{
  position:relative;padding:18px;border-radius:8px;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  box-shadow:var(--pg-shadow);
}
.pg-console--solid{background:#FFFFFF;border-color:var(--pg-line)}
.pg-console__head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:12px;font-family:var(--pg-font-anno);font-size:12px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;opacity:.82;
}

/* ---------- 12. 状态面板 ---------- */
.pg-status{
  display:grid;gap:1px;overflow:hidden;border-radius:6px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);
}
.pg-status__row{
  display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding:12px 16px;background:rgba(255,255,255,.06);
  font-family:var(--pg-font-anno);font-size:13px;letter-spacing:.06em;
}
.pg-status__label{color:rgba(248,244,236,.7)}
.pg-status__value{font-family:var(--pg-font-num);font-size:20px;font-weight:600;color:var(--pg-butter)}
.pg-status--light{background:var(--pg-line);border-color:var(--pg-line)}
.pg-status--light .pg-status__row{background:#FFFFFF}
.pg-status--light .pg-status__label{color:var(--pg-mute)}
.pg-status--light .pg-status__value{color:var(--pg-gold-deep)}

/* ---------- 13. 索引 ---------- */
.pg-index{border-top:1px solid var(--pg-line)}
.pg-index__item{
  display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:baseline;
  padding:13px 4px;border-bottom:1px solid rgba(199,194,184,.62);
}
.pg-index__no{font-family:var(--pg-font-num);font-size:14px;letter-spacing:.04em;color:var(--pg-line)}
.pg-index__name{font-family:var(--pg-font-anno);font-size:14px;font-weight:600;letter-spacing:.04em;color:var(--pg-text)}
.pg-index__meta{font-family:var(--pg-font-anno);font-size:12px;letter-spacing:.04em;color:var(--pg-mute);text-align:right}
.pg-band--ink .pg-index,.pg-band--indigo .pg-index{border-top-color:rgba(248,244,236,.24)}
.pg-band--ink .pg-index__item,.pg-band--indigo .pg-index__item{border-bottom-color:rgba(248,244,236,.16)}
.pg-band--ink .pg-index__name,.pg-band--indigo .pg-index__name{color:var(--pg-cream)}
.pg-band--ink .pg-index__no,.pg-band--indigo .pg-index__no{color:rgba(248,244,236,.45)}

/* ---------- 14. 标签与状态点 ---------- */
.pg-tag{
  display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;
  font-family:var(--pg-font-anno);font-size:12px;font-weight:600;letter-spacing:.08em;
  background:rgba(242,216,154,.45);border:1px solid rgba(224,168,60,.42);color:#7A5410;
}
.pg-tag--red{background:rgba(163,48,42,.08);border-color:rgba(163,48,42,.3);color:var(--pg-red)}
.pg-tag--green{background:rgba(111,143,92,.1);border-color:rgba(111,143,92,.36);color:#4F6B40}
.pg-tag--indigo{background:rgba(34,64,94,.08);border-color:rgba(34,64,94,.28);color:var(--pg-indigo)}
.pg-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--pg-gold)}
.pg-dot--green{background:var(--pg-green)}
.pg-dot--red{background:var(--pg-red)}

/* ---------- 15. 关键数字 ---------- */
.pg-stat{display:flex;flex-direction:column;gap:6px}
.pg-stat__value{font-family:var(--pg-font-num);font-weight:600;font-size:clamp(28px,4vw,56px);line-height:1;letter-spacing:.04em;color:var(--pg-gold-deep)}
.pg-stat__label{font-family:var(--pg-font-anno);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--pg-mute)}
.pg-band--ink .pg-stat__value,.pg-band--indigo .pg-stat__value{color:var(--pg-butter)}
.pg-band--ink .pg-stat__label,.pg-band--indigo .pg-stat__label{color:rgba(248,244,236,.62)}

/* ---------- 16. 面包屑 ---------- */
.pg-breadcrumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px;
  font-family:var(--pg-font-anno);font-size:12px;letter-spacing:.08em;color:var(--pg-mute);
}
.pg-breadcrumb__link{color:var(--pg-mute);border-bottom:1px solid transparent}
.pg-breadcrumb__link:hover{color:var(--pg-gold-deep);border-bottom-color:var(--pg-gold-deep)}
.pg-breadcrumb__sep{color:var(--pg-line)}
.pg-breadcrumb__item[aria-current="page"]{color:var(--pg-ink);font-weight:600}

/* ---------- 17. 图片容器 ---------- */
.pg-media{
  position:relative;display:block;width:100%;overflow:hidden;border-radius:4px;
  border:1px solid var(--pg-line);
  background:linear-gradient(160deg,#EAE3D5,#D9D2C3);
}
.pg-media__img{width:100%;height:100%;object-fit:cover;display:block}
.pg-media--16x9{aspect-ratio:16/9}
.pg-media--3x4{aspect-ratio:3/4}
.pg-media--4x5{aspect-ratio:4/5}
.pg-media--1x1{aspect-ratio:1/1}
.pg-media__caption{margin-top:8px;font-family:var(--pg-font-anno);font-size:12px;letter-spacing:.06em;color:var(--pg-mute)}

/* ---------- 18. 页脚 ---------- */
.pg-footer{position:relative;background:var(--pg-ink);color:var(--pg-cream)}
.pg-footer::before{
  content:"";display:block;height:6px;
  background-image:repeating-linear-gradient(90deg,var(--pg-gold) 0 1px,transparent 1px 16px);
  opacity:.45;
}
.pg-footer__inner{
  max-width:var(--pg-shell);margin:0 auto;
  padding:clamp(36px,6vw,68px) clamp(16px,4vw,40px) clamp(26px,3vw,36px);
  display:grid;grid-template-columns:1.35fr 1.5fr 1.4fr;gap:clamp(24px,4vw,56px);
}
.pg-footer__mark{
  font-family:var(--pg-font-head);font-weight:900;font-size:26px;line-height:1.1;
  letter-spacing:-.02em;color:var(--pg-cream);margin-bottom:12px;
}
.pg-footer__tag{max-width:30ch;font-size:14px;line-height:1.75;color:rgba(248,244,236,.66);margin-bottom:16px}
.pg-footer__note{margin:0;font-family:var(--pg-font-anno);font-size:12px;line-height:1.7;letter-spacing:.04em;color:rgba(248,244,236,.55)}
.pg-footer__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
.pg-footer__heading{
  margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid rgba(248,244,236,.18);
  font-family:var(--pg-font-anno);font-size:12px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--pg-gold);
}
.pg-footer__list{display:flex;flex-direction:column;gap:10px}
.pg-footer__link{
  font-family:var(--pg-font-anno);font-size:14px;letter-spacing:.04em;
  color:rgba(248,244,236,.78);border-bottom:1px solid transparent;
  transition:color .2s var(--pg-ease),border-color .2s var(--pg-ease);
}
.pg-footer__link:hover{color:var(--pg-butter);border-bottom-color:var(--pg-butter)}
.pg-footer__meta{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.pg-footer__meta-row{display:flex;gap:12px;align-items:baseline}
.pg-footer__meta dt{
  flex:0 0 auto;min-width:38px;font-family:var(--pg-font-anno);font-size:12px;
  letter-spacing:.1em;color:rgba(248,244,236,.52);
}
.pg-footer__meta dd{font-family:var(--pg-font-anno);font-size:13.5px;letter-spacing:.03em;color:rgba(248,244,236,.86)}
.pg-footer__legal{
  max-width:var(--pg-shell);margin:0 auto;
  padding:16px clamp(16px,4vw,40px) clamp(24px,3vw,36px);
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;
  border-top:1px solid rgba(248,244,236,.14);
}
.pg-footer__icp,.pg-footer__copy{margin:0;font-family:var(--pg-font-anno);font-size:12px;letter-spacing:.06em;color:rgba(248,244,236,.52)}

/* ---------- 19. 悬浮小卡 ---------- */
.pg-float-card{
  position:fixed;right:clamp(12px,3vw,32px);bottom:clamp(12px,3vw,32px);z-index:70;
  display:flex;flex-direction:column;gap:8px;width:min(220px,72vw);padding:14px;
  border:1px solid rgba(224,168,60,.45);border-left:3px solid var(--pg-gold);border-radius:6px;
  background:rgba(22,32,47,.88);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  color:var(--pg-cream);box-shadow:var(--pg-shadow);
  opacity:0;transform:translateY(14px);pointer-events:none;
  transition:opacity .3s var(--pg-ease),transform .3s var(--pg-ease);
}
.pg-float-card[data-visible]{opacity:1;transform:none;pointer-events:auto}
.pg-float-card__note{
  margin:0;font-family:var(--pg-font-anno);font-size:12px;letter-spacing:.08em;
  color:rgba(248,244,236,.68);
}
.pg-float-card__note .pg-num{font-size:15px;color:var(--pg-butter)}
.pg-float-card__link{
  font-family:var(--pg-font-anno);font-size:13.5px;font-weight:600;letter-spacing:.06em;
  color:var(--pg-cream);border-bottom:1px solid rgba(224,168,60,.5);padding-bottom:2px;align-self:flex-start;
}
.pg-float-card__link:hover{color:var(--pg-butter);border-bottom-color:var(--pg-butter)}
.pg-float-card__btn{
  margin-top:2px;padding:8px 10px;border:1px solid rgba(248,244,236,.28);border-radius:4px;
  font-family:var(--pg-font-anno);font-size:12px;font-weight:600;letter-spacing:.1em;
  color:rgba(248,244,236,.86);
  transition:border-color .2s var(--pg-ease),color .2s var(--pg-ease),background-color .2s var(--pg-ease);
}
.pg-float-card__btn:hover{border-color:var(--pg-gold);color:var(--pg-butter);background:rgba(224,168,60,.1)}

/* ---------- 20. 滚动显现 ---------- */
[data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s var(--pg-ease),transform .6s var(--pg-ease)}
[data-reveal].is-visible{opacity:1;transform:none}

/* ---------- 21. 响应式 ---------- */
@media (max-width:1080px){
  .pg-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-footer__inner{grid-template-columns:1fr 1fr;gap:32px}
  .pg-footer__contact{grid-column:1 / -1}
}
@media (max-width:900px){
  .pg-header__rail{padding-top:12px}
  .pg-masthead{grid-template-columns:1fr;gap:12px;padding:10px 0 12px}
  .pg-brand{grid-column:1}
  .pg-masthead__cta{grid-column:1;justify-self:center}
  .pg-header[data-compact] .pg-brand{flex-direction:row}
  .pg-header__navbar{justify-content:center;padding-bottom:8px}
  .pg-nav-toggle{display:inline-flex;position:absolute;left:0;top:8px}
  .pg-nav{
    position:absolute;left:0;right:0;top:100%;z-index:90;display:none;
    max-height:calc(100vh - 140px);overflow:auto;
    background:var(--pg-ink);border-top:2px solid var(--pg-gold);
    box-shadow:var(--pg-shadow);
  }
  .pg-nav[data-open]{display:block}
  .pg-nav__list{flex-direction:column;gap:0;padding:6px clamp(16px,4vw,40px) 14px}
  .pg-nav__link{
    display:block;padding:15px 4px;font-size:15px;color:var(--pg-cream);
    border-bottom:1px solid rgba(248,244,236,.14);
  }
  .pg-nav__link::after{display:none}
  .pg-nav__link:hover{color:var(--pg-butter)}
  .pg-nav__link[aria-current="page"]{color:var(--pg-butter)}
  .pg-nav__link[aria-current="page"]::before{
    content:"";display:inline-block;width:7px;height:7px;margin-right:10px;border-radius:50%;
    background:var(--pg-gold);vertical-align:middle;
  }
  .pg-grid,.pg-grid--2,.pg-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pg-frame{padding:clamp(18px,5vw,32px)}
}
@media (max-width:680px){
  .pg-util{display:none}
  .pg-grid,.pg-grid--2,.pg-grid--3{grid-template-columns:1fr}
  .pg-footer__inner{grid-template-columns:1fr}
  .pg-footer__cols{grid-template-columns:1fr 1fr}
  .pg-index__item{grid-template-columns:auto 1fr;row-gap:4px}
  .pg-index__meta{grid-column:2;text-align:left}
  .pg-float-card{width:min(200px,80vw)}
}
@media (max-width:420px){
  .pg-footer__cols{grid-template-columns:1fr}
  .pg-brand__sub{letter-spacing:.12em;font-size:11px}
}

/* ---------- 22. 减弱动效 ---------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    transition-duration:.001ms !important;
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
  }
  [data-reveal]{opacity:1;transform:none}
  .pg-card:hover{transform:none}
  .pg-btn:active{transform:none}
  .pg-float-card{transform:none}
}
