/* ============================================================
   /assets/site.css — 新葡平台指南 共享样式
   01 变量  02 Reset  03 排版  04 按钮  05 页头  06 页脚
   07 骨架与网格  08 基础组件  09 动效与可访问性
   ============================================================ */

/* 01 变量 */
:root{
  --ink-900:#071A2B;
  --ink-800:#0E2740;
  --ink-700:#132F4B;
  --paper:#F4EBDD;
  --paper-white:#FBF7EF;
  --pulse:#2FE3C8;
  --signal:#FF7A3C;
  --archive:#B23A2B;
  --cool:#9BAAB8;
  --rule:#34495A;
  --brass:#C9A36A;

  --rail-w:288px;
  --gutter:clamp(18px,4vw,56px);
  --maxw:1180px;

  --font-display:'Noto Sans SC','Source Han Sans SC','Alibaba PuHuiTi',system-ui,sans-serif;
  --font-body:'Noto Sans SC','Source Han Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
  --font-mono:'JetBrains Mono','IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;

  --ease:cubic-bezier(.22,.61,.36,1);
  --t-fast:150ms;
  --t-mid:220ms;
}

/* 02 Reset */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-block-start:96px;}
body,h1,h2,h3,h4,h5,p,ul,ol,li,figure,blockquote,dl,dd{margin:0;}
ul,ol{padding:0;list-style:none;}
img,picture,svg,video{display:block;max-width:100%;height:auto;}
button,input,select,textarea{font:inherit;color:inherit;}
button{background:none;border:0;padding:0;cursor:pointer;}
a{color:inherit;text-decoration:none;}
table{border-collapse:collapse;width:100%;}
:focus-visible{outline:2px solid var(--pulse);outline-offset:3px;border-radius:2px;}
::selection{background:var(--pulse);color:var(--ink-900);}

/* 03 排版 */
body{
  min-height:100vh;
  background-color:var(--ink-900);
  background-image:
    repeating-linear-gradient(to right,rgba(52,73,90,.20) 0 1px,transparent 1px 96px),
    repeating-linear-gradient(to bottom,rgba(52,73,90,.14) 0 1px,transparent 1px 96px);
  color:var(--paper-white);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.1;letter-spacing:-.02em;}
h1{font-size:clamp(2.3rem,6vw,4.4rem);}
h2{font-size:clamp(1.65rem,3.4vw,2.5rem);}
h3{font-size:clamp(1.15rem,2vw,1.45rem);letter-spacing:0;}
h4{font-size:1.05rem;letter-spacing:0;}
strong{font-weight:800;color:var(--paper-white);}

#main-content{display:block;scroll-margin-block-start:110px;}

.px-wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.px-main{display:block;}

.px-prose{max-width:38em;line-height:1.85;color:inherit;}
.px-prose > * + *{margin-block-start:1.05em;}
.px-prose h2,.px-prose h3{margin-block-start:1.9em;line-height:1.25;}
.px-prose ul{list-style:disc;padding-inline-start:1.25em;}
.px-prose ol{list-style:decimal;padding-inline-start:1.4em;}
.px-prose li + li{margin-block-start:.4em;}
.px-prose a{color:var(--pulse);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;}
.px-prose a:hover{color:var(--paper-white);}

.px-lede{font-size:clamp(1.02rem,1.6vw,1.22rem);line-height:1.7;max-width:34em;color:#C6D4E0;}
.px-meta{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;color:var(--cool);}
.px-mono{font-family:var(--font-mono);letter-spacing:.08em;}
.px-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--pulse);
}
.px-eyebrow::before{content:"";width:22px;height:1px;background:currentColor;flex:none;}
.px-note{
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;
  color:var(--cool);
}
@media (min-width:1024px){
  .px-note--vertical{writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:.34em;}
}
.px-rule{border:0;height:1px;margin-block:clamp(28px,5vw,56px);
  background-image:repeating-linear-gradient(to right,var(--rule) 0 12px,transparent 12px 20px);}

/* 04 按钮 */
.px-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 18px;
  font-family:var(--font-display);font-weight:700;font-size:14px;line-height:1.2;
  border:1px solid transparent;border-radius:2px;cursor:pointer;
  transition:transform var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),
             color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),
             filter var(--t-fast) var(--ease);
}
.px-btn--signal{
  background:var(--signal);color:var(--ink-900);
  clip-path:polygon(0 0,100% 0,100% 68%,92% 100%,0 100%);
}
.px-btn--signal:hover{transform:translate(2px,-2px);filter:brightness(1.08);}
.px-btn--ghost{border-color:var(--rule);color:var(--paper-white);background:rgba(47,227,200,.03);}
.px-btn--ghost:hover{border-color:var(--pulse);color:var(--pulse);transform:translate(2px,-2px);}
.px-btn--quiet{background:var(--ink-900);color:var(--paper-white);}
.px-btn--quiet:hover{background:var(--archive);color:var(--paper-white);transform:translate(2px,-2px);}

/* 05 页头 */
.px-skip{
  position:absolute;inset-inline-start:10px;inset-block-start:8px;z-index:300;
  transform:translateY(-180%);
  padding:10px 16px;background:var(--signal);color:var(--ink-900);
  font-weight:700;font-size:14px;border-radius:2px;
  transition:transform var(--t-fast) var(--ease);
}
.px-skip:focus{transform:translateY(0);}

.px-console{
  position:sticky;top:0;z-index:80;
  background:var(--ink-900);
  border-block-end:1px solid var(--rule);
  color:var(--paper-white);
  isolation:isolate;
}
.px-console__bar{
  position:relative;
  display:flex;flex-wrap:wrap;align-items:center;
  gap:10px 12px;
  padding:11px var(--gutter);
}

/* 品牌 */
.px-brand{display:flex;align-items:center;gap:10px;min-width:0;}
.px-brand__mark{
  flex:none;width:38px;height:38px;display:grid;place-items:center;
  font-family:var(--font-display);font-weight:800;font-size:17px;line-height:1;
  color:var(--ink-900);background:var(--pulse);
  clip-path:polygon(0 0,100% 0,100% 70%,70% 100%,0 100%);
}
.px-brand__text{display:flex;flex-direction:column;line-height:1.2;min-width:0;}
.px-brand__name{font-family:var(--font-display);font-weight:800;font-size:15.5px;letter-spacing:.01em;white-space:nowrap;}
.px-brand__sub{
  font-family:var(--font-mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--cool);white-space:nowrap;
}

/* 状态带 */
.px-statusline{
  display:flex;align-items:center;gap:8px;
  flex-basis:100%;order:5;
  font-family:var(--font-mono);font-size:10.5px;line-height:1.6;letter-spacing:.05em;
  color:var(--cool);
}
.px-statusline__dot{
  flex:none;width:7px;height:7px;border-radius:50%;
  background:var(--pulse);box-shadow:0 0 0 3px rgba(47,227,200,.18);
  animation:px-pulse 2.6s var(--ease) infinite;
}
@keyframes px-pulse{
  0%,100%{box-shadow:0 0 0 3px rgba(47,227,200,.18);}
  50%{box-shadow:0 0 0 6px rgba(47,227,200,.05);}
}

/* 动作键 */
.px-console__actions{display:flex;align-items:center;gap:8px;margin-inline-start:auto;}
.px-console__actions .px-btn{padding:9px 13px;font-size:12.5px;}
.px-console__actions .px-btn--ghost{display:none;}

/* 移动开关 */
.px-navtoggle{
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 12px;
  border:1px solid var(--rule);border-radius:2px;
  color:var(--paper-white);
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.16em;
  clip-path:polygon(0 0,100% 0,100% 62%,88% 100%,0 100%);
  transition:border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease);
}
.px-navtoggle:hover{border-color:var(--pulse);color:var(--pulse);}
.px-navtoggle__bars{display:grid;gap:4px;width:16px;}
.px-navtoggle__bars i{
  display:block;height:2px;background:currentColor;
  transition:transform var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease);
}
.px-console[data-open] .px-navtoggle{border-color:var(--pulse);color:var(--pulse);}
.px-console[data-open] .px-navtoggle__bars i:first-child{transform:translateY(3px) rotate(45deg);}
.px-console[data-open] .px-navtoggle__bars i:last-child{transform:translateY(-3px) rotate(-45deg);}

/* 导航（移动抽屉） */
.px-nav{
  position:absolute;inset-inline:0;inset-block-start:100%;
  display:block;
  max-height:0;overflow:hidden;
  visibility:hidden;opacity:0;
  background:var(--ink-800);
  border-block-end:1px solid var(--rule);
  transition:max-height var(--t-mid) var(--ease),opacity var(--t-fast) var(--ease),visibility var(--t-fast) linear;
}
.px-console[data-open] .px-nav{
  max-height:min(78vh,660px);overflow-y:auto;
  visibility:visible;opacity:1;
}
.px-nav__caption{
  padding:15px var(--gutter) 4px;
  font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--cool);
}
.px-nav__list{display:flex;flex-direction:column;padding:0 var(--gutter) 6px;}
.px-nav__item{position:relative;min-width:0;}
.px-nav__link{
  position:relative;
  display:flex;align-items:baseline;gap:12px;
  padding:11px 24px 11px 2px;
  border-block-end:1px solid rgba(52,73,90,.65);
  color:var(--paper-white);
  transition:color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),
             padding-inline-start var(--t-mid) var(--ease);
}
.px-nav__no{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--cool);flex:none;}
.px-nav__label{font-family:var(--font-display);font-weight:700;font-size:16px;}
.px-nav__link:hover,.px-nav__link:focus-visible{color:var(--pulse);background:rgba(47,227,200,.07);padding-inline-start:10px;}
.px-nav__link[aria-current="page"]{color:var(--pulse);background:rgba(47,227,200,.08);}
.px-nav__link[aria-current="page"] .px-nav__no{color:var(--pulse);}
.px-nav__link[aria-current="page"]::after{
  content:"";position:absolute;inset-inline-end:8px;inset-block-start:50%;
  width:7px;height:7px;border-radius:50%;
  background:var(--pulse);box-shadow:0 0 0 3px rgba(47,227,200,.2);
  transform:translateY(-50%);
}
.px-nav__foot{
  display:grid;gap:5px;
  padding:13px var(--gutter) 20px;
  border-block-start:1px solid var(--rule);
  font-family:var(--font-mono);font-size:10.5px;line-height:1.7;letter-spacing:.04em;
  color:var(--cool);
}
.px-nav__footitem{display:block;}

/* 刻度与进度 */
.px-railticks{
  position:absolute;inset-inline:0;inset-block-start:0;height:2px;
  background-image:repeating-linear-gradient(to right,rgba(47,227,200,.5) 0 1px,transparent 1px 12px);
  pointer-events:none;
}
.px-progress{
  position:absolute;inset-inline:0;inset-block-end:-1px;height:2px;
  background:rgba(47,227,200,.12);
  pointer-events:none;
}
.px-progress > span{
  display:block;height:100%;width:100%;
  transform:scaleX(0);transform-origin:0 50%;
  background-image:linear-gradient(90deg,var(--pulse),var(--signal));
}

@media (min-width:900px){
  .px-statusline{flex-basis:auto;order:0;margin-inline-start:auto;font-size:10.5px;}
  .px-console__actions{margin-inline-start:0;}
  .px-console__actions .px-btn--ghost{display:inline-flex;}
  .px-brand__mark{width:42px;height:42px;font-size:18px;}
  .px-brand__name{font-size:16.5px;}
}

/* 桌面：左侧固定信号台 */
@media (min-width:1080px){
  body{padding-inline-start:var(--rail-w);}
  .px-console{
    position:fixed;inset-block:0;inset-inline-start:0;
    width:var(--rail-w);
    display:flex;flex-direction:column;
    border-block-end:0;border-inline-end:1px solid var(--rule);
    overflow-y:auto;overflow-x:hidden;
    z-index:90;
  }
  .px-console__bar{
    flex-direction:column;flex-wrap:nowrap;align-items:stretch;
    gap:14px;
    padding:24px 22px 18px;
    border-block-end:1px solid var(--rule);
  }
  .px-brand{gap:12px;}
  .px-statusline{
    flex-basis:auto;order:0;margin-inline-start:0;
    align-items:flex-start;
    padding:10px 12px;
    border:1px solid rgba(47,227,200,.28);
    background:rgba(47,227,200,.05);
    font-size:10px;line-height:1.65;color:#B9C7D3;
  }
  .px-statusline__dot{margin-block-start:5px;}
  .px-console__actions{flex-direction:column;align-items:stretch;gap:8px;}
  .px-console__actions .px-btn{width:100%;padding:11px 14px;font-size:13.5px;}
  .px-console__actions .px-btn--ghost{display:inline-flex;}
  .px-navtoggle{display:none;}
  .px-nav{
    position:static;flex:1 1 auto;
    max-height:none;overflow:visible;
    visibility:visible;opacity:1;
    background:transparent;border:0;
    display:flex;flex-direction:column;
    padding-block:18px 10px;
  }
  .px-nav__caption{padding:0 22px 10px;font-size:9.5px;}
  .px-nav__list{padding:0;gap:0;}
  .px-nav__link{
    border-block-end:0;
    border-inline-start:2px solid transparent;
    padding:12px 20px 12px 20px;
  }
  .px-nav__link:hover,.px-nav__link:focus-visible{padding-inline-start:26px;}
  .px-nav__link[aria-current="page"]{border-inline-start-color:var(--pulse);background:rgba(47,227,200,.08);}
  .px-nav__label{font-size:16.5px;}
  .px-nav__foot{margin-block-start:auto;padding:14px 22px 24px;}
  .px-railticks{
    inset-inline-start:auto;inset-inline-end:0;
    inset-block-start:0;height:auto;width:12px;
    background-image:
      repeating-linear-gradient(to bottom,rgba(47,227,200,.45) 0 1px,transparent 1px 84px),
      repeating-linear-gradient(to bottom,rgba(155,170,184,.28) 0 1px,transparent 1px 14px);
  }
  .px-progress{inset-block-end:auto;inset-block-start:0;height:2px;}
}

/* 06 页脚 */
.px-footer{
  position:relative;
  margin-block-start:clamp(48px,8vw,96px);
  background:var(--ink-900);
  border-block-start:1px solid var(--rule);
  color:var(--cool);
  font-size:14px;
}
.px-footer__ticks{
  height:10px;
  background-image:repeating-linear-gradient(to right,rgba(155,170,184,.32) 0 1px,transparent 1px 16px);
  border-block-end:1px solid var(--rule);
}
.px-footer__inner{padding-block:clamp(28px,5vw,56px) 0;}
.px-footer__grid{display:grid;grid-template-columns:1fr;gap:clamp(22px,4vw,38px);}
.px-footer__brand{min-width:0;}
.px-footer__brandline{
  font-family:var(--font-display);font-weight:800;line-height:1.35;letter-spacing:-.01em;
  font-size:clamp(1.1rem,2vw,1.35rem);color:var(--paper-white);
}
.px-footer__note{
  margin-block-start:10px;
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;color:var(--cool);
}
.px-footer__cta{margin-block-start:18px;}
.px-footer__col{min-width:0;}
.px-footer__head{
  margin-block-end:12px;padding-block-end:8px;
  border-block-end:1px solid rgba(52,73,90,.85);
  font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.2em;
  text-transform:uppercase;color:var(--brass);
}
.px-footer__links{display:grid;gap:9px;}
.px-footer__link{
  display:inline-block;color:var(--cool);font-size:14px;line-height:1.6;
  transition:color var(--t-fast) var(--ease),padding-inline-start var(--t-fast) var(--ease);
}
.px-footer__link:hover,.px-footer__link:focus-visible{color:var(--pulse);padding-inline-start:5px;}
.px-footer__contact{
  display:grid;gap:5px;
  margin-block-start:clamp(26px,4vw,44px);
  padding-block-start:20px;
  border-block-start:1px solid var(--rule);
  font-family:var(--font-mono);font-size:11.5px;line-height:1.85;letter-spacing:.04em;
  color:var(--cool);
}
.px-footer__contact span{display:block;}
.px-footer__base{
  display:flex;flex-wrap:wrap;gap:6px 24px;
  justify-content:space-between;align-items:baseline;
  margin-block-start:18px;
  padding-block:18px clamp(20px,3vw,30px);
  border-block-start:1px solid rgba(52,73,90,.7);
  font-family:var(--font-mono);font-size:10.5px;line-height:1.8;letter-spacing:.06em;
  color:#7E8F9E;
}
.px-footer__copy,.px-footer__legal{max-width:100%;}
@media (min-width:640px){
  .px-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .px-footer__brand{grid-column:1 / -1;}
}
@media (min-width:1080px){
  .px-footer__grid{grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:28px;}
  .px-footer__brand{grid-column:auto;}
}

/* 07 骨架与网格 */
.px-band{padding-block:clamp(36px,6vw,76px);}
.px-band--paper{background:var(--paper);color:var(--ink-900);}
.px-band--paper .px-eyebrow{color:var(--archive);}
.px-band--paper .px-note{color:#6C7C89;}
.px-band--paper .px-meta{color:#6C7C89;}
.px-band--paper .px-prose a{color:var(--archive);}
.px-band--paper .px-lede{color:#3C4E5D;}

.px-grid{display:grid;gap:clamp(16px,2.4vw,28px);}
.px-grid--2,.px-grid--3,.px-grid--4{grid-template-columns:1fr;}
@media (min-width:720px){
  .px-grid--2,.px-grid--3,.px-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width:1024px){
  .px-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
  .px-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));}
}

/* 08 基础组件 */
.px-breadcrumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  padding-block:18px 0;
  font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--cool);
}
.px-breadcrumb__link{
  color:var(--cool);border-block-end:1px solid transparent;
  transition:color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease);
}
.px-breadcrumb__link:hover{color:var(--pulse);border-block-end-color:var(--pulse);}
.px-breadcrumb__sep{color:var(--rule);}
.px-breadcrumb [aria-current="page"]{color:var(--paper-white);}

.px-panel{
  position:relative;
  padding:clamp(18px,3vw,30px);
  background:var(--ink-800);
  border:1px solid var(--rule);
  clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,18px 100%,0 calc(100% - 18px));
  transition:border-color var(--t-mid) var(--ease),transform var(--t-mid) var(--ease);
}
.px-panel:hover{border-color:var(--pulse);}
.px-panel--paper{
  background:var(--paper);color:var(--ink-900);border-color:#D6C9B4;
  background-image:repeating-linear-gradient(to bottom,rgba(7,26,43,.05) 0 1px,transparent 1px 28px);
}
.px-panel--paper:hover{border-color:var(--archive);}

.px-tag{
  display:inline-block;
  padding:3px 9px;
  font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:#F0A08E;background:rgba(178,58,43,.18);
  border:1px solid rgba(178,58,43,.55);border-radius:2px;
}
.px-tag--pulse{color:var(--pulse);background:rgba(47,227,200,.1);border-color:rgba(47,227,200,.5);}

.px-figure{margin:0;display:block;}
.px-figure__frame{
  position:relative;overflow:hidden;
  aspect-ratio:16 / 9;
  background:var(--ink-800);
  border:1px solid var(--rule);
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
}
.px-figure__frame[data-ratio="4:3"]{aspect-ratio:4 / 3;}
.px-figure__frame[data-ratio="1:1"]{aspect-ratio:1 / 1;}
.px-figure__frame[data-ratio="21:9"]{aspect-ratio:21 / 9;}
.px-figure__frame > img,
.px-figure__frame > picture > img,
.px-figure__frame > svg{width:100%;height:100%;object-fit:cover;display:block;}
.px-figure__cap{
  margin-block-start:10px;
  font-family:var(--font-mono);font-size:10.5px;line-height:1.7;letter-spacing:.06em;
  color:var(--cool);
}
.px-band--paper .px-figure__cap{color:#6C7C89;}

.px-ticks{position:relative;padding-inline-start:22px;}
.px-ticks::before{
  content:"";position:absolute;inset-block:0;inset-inline-start:0;width:9px;
  border-inline-start:1px solid var(--rule);
  background-image:repeating-linear-gradient(to bottom,rgba(155,170,184,.42) 0 1px,transparent 1px 12px);
}
.px-band--paper .px-ticks::before{
  border-inline-start-color:#C6B7A0;
  background-image:repeating-linear-gradient(to bottom,rgba(7,26,43,.3) 0 1px,transparent 1px 12px);
}

.px-table{width:100%;font-size:13.5px;border-block-start:1px solid var(--rule);}
.px-table th,.px-table td{padding:11px 12px;text-align:start;vertical-align:top;border-block-end:1px solid rgba(52,73,90,.7);}
.px-table th{
  font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.14em;
  text-transform:uppercase;color:var(--cool);
}
.px-table tbody tr{transition:background-color var(--t-fast) var(--ease);}
.px-table tbody tr:hover{background:rgba(47,227,200,.07);}
.px-band--paper .px-table{border-block-start-color:#C6B7A0;}
.px-band--paper .px-table th{color:#6C7C89;}
.px-band--paper .px-table th,.px-band--paper .px-table td{border-block-end-color:#D9CCB8;}

.px-segmented{
  display:inline-flex;flex-wrap:wrap;gap:4px;
  padding:4px;border:1px solid var(--rule);border-radius:2px;
  background:rgba(14,39,64,.75);
}
.px-segmented__btn{
  padding:8px 14px;border-radius:1px;
  font-family:var(--font-mono);font-size:11.5px;letter-spacing:.1em;
  color:var(--cool);
  transition:background-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease);
}
.px-segmented__btn:hover{color:var(--paper-white);background:rgba(47,227,200,.12);}
.px-segmented__btn[aria-selected="true"]{background:var(--pulse);color:var(--ink-900);font-weight:700;}
.px-segpanel{margin-block-start:20px;animation:px-fade var(--t-mid) var(--ease) both;}
.px-segpanel[hidden]{display:none;}
@keyframes px-fade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}

/* 09 动效与可访问性 */
[data-reveal]{opacity:0;transform:translateY(14px);}
[data-reveal].is-in{
  opacity:1;transform:none;
  transition:opacity 420ms var(--ease),transform 420ms var(--ease);
}

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