/* ==========================================================
   顺发娱乐站 — 全站共享样式 /assets/site.css
   深海蓝基底 · 霓虹青强调 · 暖金数字 · 等宽时间标签
   ========================================================== */

/* ---------- 0. 设计令牌 ---------- */
:root{
  --sf-deep-900:#061428;
  --sf-deep-800:#0B2140;
  --sf-deep-700:#12305A;
  --sf-deep-600:#1C4677;
  --sf-neon-400:#3FE0D0;
  --sf-neon-200:#A6F7EF;
  --sf-gold-500:#F2B441;
  --sf-gold-300:#FFDE9B;
  --sf-mist:#EAF2F8;
  --sf-gray:#93A9C0;
  --sf-ember:#E8794A;

  --sf-rail-w:260px;
  --sf-shell:1320px;
  --sf-gap:clamp(18px,2.4vw,30px);
  --sf-pad:clamp(16px,3vw,34px);

  --sf-radius-l:22px;
  --sf-radius-m:16px;
  --sf-radius-s:11px;

  --sf-font-display:"Noto Sans SC Condensed","Source Han Sans SC Condensed","思源黑体窄版","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --sf-font-body:"Noto Sans SC","Source Han Sans SC","思源黑体","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
  --sf-font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,"Courier New",monospace;

  --sf-grad-deep:linear-gradient(160deg,#061428 0%,#0B2140 45%,rgba(63,224,208,.18) 100%);
  --sf-grad-night:linear-gradient(168deg,#0B2140 0%,#061428 62%,rgba(63,224,208,.14) 100%);
  --sf-ease:cubic-bezier(.22,.61,.36,1);
}

/* ---------- 1. Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background-color:var(--sf-deep-900);
  color:var(--sf-mist);
  font-family:var(--sf-font-body);
  font-size:16.5px;
  line-height:1.85;
  letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img,svg,video{display:block;max-width:100%}
ul,ol{margin:0;padding:0;list-style:none}
p{margin:0 0 1.1em}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0}
table{border-collapse:collapse;width:100%}
hr{border:0;border-top:1px solid rgba(28,70,119,.8);margin:0}

/* ---------- 2. 中文排版 ---------- */
h1,h2,h3,h4{
  margin:0;
  font-family:var(--sf-font-display);
  font-weight:800;
  line-height:1.24;
  letter-spacing:-.02em;
  color:var(--sf-mist);
  text-wrap:balance;
}
h1{font-size:clamp(30px,5vw,54px);font-weight:900}
h2{font-size:clamp(24px,2.6vw,34px)}
h3{font-size:20px}
h4{font-size:17px;letter-spacing:0}
strong{font-weight:700;color:#fff}
.sf-prose{max-width:68ch}
.sf-prose p{margin:0 0 1.15em;color:rgba(234,242,248,.86)}
.sf-prose h2{margin:1.6em 0 .5em}
.sf-prose h3{margin:1.4em 0 .45em}
.sf-lede{max-width:62ch;font-size:17px;line-height:1.9;color:rgba(234,242,248,.86)}
.sf-kicker{
  display:inline-block;
  font-family:var(--sf-font-mono);
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--sf-neon-400);
  margin-bottom:12px;
}
.sf-mono{
  font-family:var(--sf-font-mono);
  font-variant-numeric:tabular-nums;
  letter-spacing:.02em;
  color:var(--sf-gold-300);
}

/* ---------- 3. 焦点与选择 ---------- */
:focus{outline:none}
:focus-visible{
  outline:2px solid var(--sf-gold-300);
  outline-offset:3px;
  border-radius:8px;
}
::selection{background:rgba(63,224,208,.32);color:#fff}

/* ---------- 4. 顶部阅读进度 ---------- */
.sf-progress{
  position:fixed;
  top:0;left:0;right:0;
  height:3px;
  z-index:95;
  background:rgba(28,70,119,.45);
  pointer-events:none;
}
.sf-progress__bar{
  display:block;
  height:100%;
  width:100%;
  transform:scaleX(0);
  transform-origin:0 50%;
  background:linear-gradient(90deg,#3FE0D0 0%,#A6F7EF 55%,#F2B441 100%);
  transition:transform .12s linear;
}

/* ---------- 5. 头部外壳 ---------- */
.sf-header{
  position:sticky;
  top:0;
  z-index:60;
  background:var(--sf-deep-900);
  border-bottom:1px solid rgba(28,70,119,.85);
}
.sf-skip{
  position:absolute;
  top:-64px;
  left:12px;
  z-index:120;
  padding:11px 20px;
  border-radius:0 0 12px 12px;
  background:var(--sf-gold-500);
  color:#061428;
  font-weight:700;
  font-size:14px;
  letter-spacing:.04em;
  transition:top .18s var(--sf-ease);
}
.sf-skip:focus{top:0}

/* 刊头 */
.sf-masthead{
  max-width:var(--sf-shell);
  margin:0 auto;
  padding:16px var(--sf-pad) 10px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:10px 18px;
}
.sf-masthead__kicker{
  grid-column:1;
  justify-self:start;
  margin:0;
  display:none;
  font-size:12.5px;
  letter-spacing:.08em;
  color:var(--sf-gray);
}
.sf-masthead__center{
  grid-column:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  text-align:center;
}
.sf-brand{
  font-family:var(--sf-font-display);
  font-weight:900;
  font-size:clamp(21px,2.4vw,29px);
  letter-spacing:-.01em;
  color:#fff;
  line-height:1.1;
}
.sf-brand__mark{
  font-family:var(--sf-font-mono);
  font-size:11px;
  letter-spacing:.2em;
  color:var(--sf-neon-400);
}
.sf-masthead__side{
  grid-column:3;
  justify-self:end;
  display:flex;
  align-items:center;
  gap:16px;
}
.sf-utility__link{
  display:none;
  font-size:13px;
  letter-spacing:.05em;
  color:var(--sf-gray);
  padding-bottom:2px;
  border-bottom:1px solid transparent;
  transition:color .2s var(--sf-ease),border-color .2s var(--sf-ease);
}
.sf-utility__link:hover,
.sf-utility__link:focus-visible{color:var(--sf-neon-200);border-bottom-color:var(--sf-neon-400)}

/* 移动导航按钮 */
.sf-navtoggle{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:9px 15px;
  border-radius:999px;
  border:1px solid rgba(63,224,208,.38);
  background:rgba(18,48,90,.7);
  color:var(--sf-neon-200);
  font-size:13px;
  letter-spacing:.08em;
  cursor:pointer;
  transition:border-color .2s var(--sf-ease),background-color .2s var(--sf-ease);
}
.sf-navtoggle:hover{border-color:var(--sf-neon-400);background:rgba(18,48,90,.95)}
.sf-navtoggle__bars{
  position:relative;
  display:block;
  width:16px;height:2px;
  background:currentColor;
  transition:background-color .2s var(--sf-ease);
}
.sf-navtoggle__bars::before,
.sf-navtoggle__bars::after{
  content:"";
  position:absolute;left:0;
  width:16px;height:2px;
  background:currentColor;
  transition:transform .2s var(--sf-ease),top .2s var(--sf-ease);
}
.sf-navtoggle__bars::before{top:-5px}
.sf-navtoggle__bars::after{top:5px}
.sf-navtoggle[aria-expanded="true"] .sf-navtoggle__bars{background:transparent}
.sf-navtoggle[aria-expanded="true"] .sf-navtoggle__bars::before{top:0;transform:rotate(45deg)}
.sf-navtoggle[aria-expanded="true"] .sf-navtoggle__bars::after{top:0;transform:rotate(-45deg)}

/* 栏目导航 */
.sf-nav{
  max-width:var(--sf-shell);
  margin:0 auto;
  padding:0 var(--sf-pad);
}
.sf-nav__list{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:4px;
  border-top:1px solid rgba(28,70,119,.7);
  padding-top:4px;
}
.sf-nav__link{
  display:block;
  padding:11px 16px;
  font-size:14px;
  letter-spacing:.06em;
  color:var(--sf-gray);
  border-bottom:2px solid transparent;
  transition:color .2s var(--sf-ease),border-color .2s var(--sf-ease),background-color .2s var(--sf-ease);
}
.sf-nav__link:hover,
.sf-nav__link:focus-visible{color:var(--sf-neon-200);background:rgba(18,48,90,.6)}
.sf-nav__link[aria-current="page"]{
  color:var(--sf-neon-400);
  border-bottom-color:var(--sf-neon-400);
}

/* ---------- 6. 左侧品牌轨道（移动优先：底部滑动条） ---------- */
.sf-rail{
  position:fixed;
  left:0;right:0;bottom:0;
  z-index:70;
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
  background:rgba(11,33,64,.97);
  border-top:1px solid rgba(28,70,119,.95);
  overflow-x:auto;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}
.sf-rail__brand{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  color:var(--sf-mist);
}
.sf-rail__glyph{
  width:26px;height:26px;
  flex:0 0 auto;
  border-radius:9px;
  background:conic-gradient(from 140deg,#3FE0D0,#A6F7EF,#F2B441,#3FE0D0);
  box-shadow:0 0 20px rgba(63,224,208,.35);
}
.sf-rail__name{
  font-family:var(--sf-font-display);
  font-weight:900;
  font-size:15px;
  letter-spacing:-.01em;
  color:#fff;
  white-space:nowrap;
}
.sf-rail__sub{
  display:none;
  font-family:var(--sf-font-mono);
  font-size:11px;
  letter-spacing:.14em;
  color:var(--sf-gray);
}
.sf-rail__nav{display:none}
.sf-rail__label{
  display:none;
  margin:0 0 10px;
  font-family:var(--sf-font-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--sf-gold-500);
}
.sf-rail__list{display:flex;flex-direction:column;gap:2px}
.sf-rail__link{
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 11px;
  border-radius:var(--sf-radius-s);
  font-size:14px;
  color:var(--sf-gray);
  transition:background-color .2s var(--sf-ease),color .2s var(--sf-ease);
}
.sf-rail__link::before{
  content:"";
  width:5px;height:5px;
  flex:0 0 auto;
  border-radius:50%;
  background:currentColor;
  opacity:.5;
}
.sf-rail__link:hover,
.sf-rail__link:focus-visible{background:rgba(28,70,119,.6);color:var(--sf-mist)}
.sf-rail__link[aria-current="page"]{background:rgba(63,224,208,.12);color:var(--sf-neon-200)}
.sf-rail__link[aria-current="page"]::before{
  background:var(--sf-neon-400);
  opacity:1;
  box-shadow:0 0 10px var(--sf-neon-400);
}
.sf-rail__quick{
  display:none;
  flex-direction:row;
  flex:0 0 auto;
  gap:8px;
}
.sf-rail__quicklink{
  display:block;
  padding:7px 13px;
  border-radius:999px;
  border:1px dashed rgba(63,224,208,.32);
  background:rgba(18,48,90,.5);
  font-size:12.5px;
  color:var(--sf-mist);
  white-space:nowrap;
  transition:border-color .2s var(--sf-ease),background-color .2s var(--sf-ease);
}
.sf-rail__quicklink:hover,
.sf-rail__quicklink:focus-visible{border-color:var(--sf-neon-400);background:rgba(18,48,90,.9)}
.sf-save{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:0 0 0 auto;
  flex:0 0 auto;
  padding:9px 16px;
  border-radius:999px;
  border:1px solid rgba(242,180,65,.45);
  background:linear-gradient(140deg,rgba(242,180,65,.18),rgba(63,224,208,.12));
  color:var(--sf-gold-300);
  font-size:13px;
  letter-spacing:.05em;
  white-space:nowrap;
  cursor:pointer;
  transition:background .25s var(--sf-ease),border-color .25s var(--sf-ease),color .25s var(--sf-ease);
}
.sf-save:hover{border-color:var(--sf-gold-500);color:#fff}
.sf-save__dot{
  width:8px;height:8px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 3px rgba(242,180,65,.16);
}
.sf-save[aria-pressed="true"]{
  background:linear-gradient(140deg,#F2B441,#FFDE9B);
  border-color:var(--sf-gold-500);
  color:#061428;
  font-weight:700;
}
.sf-save[aria-pressed="true"] .sf-save__dot{background:#061428;box-shadow:0 0 0 3px rgba(6,20,40,.2)}

/* 底部条占位 */
body{padding-bottom:76px}

/* ---------- 7. 页脚 ---------- */
.sf-footer{
  margin-top:clamp(40px,6vw,90px);
  padding:clamp(34px,5vw,64px) var(--sf-pad) 26px;
  background:linear-gradient(180deg,#0B2140 0%,#061428 100%);
  border-top:1px solid rgba(28,70,119,.9);
}
.sf-footer__inner{
  max-width:var(--sf-shell);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1.85fr);
  gap:clamp(22px,3.4vw,44px);
}
.sf-footer__brandcol{grid-column:1}
.sf-footer__brand{
  display:inline-block;
  font-family:var(--sf-font-display);
  font-weight:900;
  font-size:22px;
  letter-spacing:-.01em;
  color:#fff;
  margin-bottom:10px;
}
.sf-footer__tagline{
  margin:0 0 14px;
  max-width:34ch;
  font-size:14px;
  color:var(--sf-gray);
}
.sf-footer__legal{
  margin:0;
  font-family:var(--sf-font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:rgba(147,169,192,.85);
}
.sf-footer__cols{
  grid-column:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,2vw,26px);
}
.sf-footer__title{
  margin:0 0 12px;
  font-family:var(--sf-font-mono);
  font-size:12px;
  font-weight:500;
  letter-spacing:.16em;
  color:var(--sf-gold-500);
}
.sf-footer__links{display:flex;flex-direction:column;gap:8px}
.sf-footer__link{
  font-size:14px;
  color:var(--sf-gray);
  transition:color .2s var(--sf-ease);
}
.sf-footer__link:hover,
.sf-footer__link:focus-visible{color:var(--sf-neon-200)}
.sf-footer__contact{
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 26px;
  padding-top:clamp(16px,2.4vw,26px);
  border-top:1px dashed rgba(63,224,208,.22);
}
.sf-footer__contactline{
  margin:0;
  font-size:14px;
  color:var(--sf-mist);
}
.sf-footer__note{
  flex:1 1 320px;
  margin:0;
  font-size:13px;
  line-height:1.75;
  color:var(--sf-gray);
}
.sf-footer__base{
  max-width:var(--sf-shell);
  margin:clamp(26px,4vw,44px) auto 0;
  padding-top:18px;
  border-top:1px solid rgba(28,70,119,.7);
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  justify-content:space-between;
  font-size:12.5px;
  letter-spacing:.04em;
  color:var(--sf-gray);
}
.sf-footer__copy,
.sf-footer__meta{margin:0}

/* 回到顶部 */
.sf-totop{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:80;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid rgba(63,224,208,.4);
  background:rgba(11,33,64,.94);
  color:var(--sf-neon-200);
  font-size:13px;
  letter-spacing:.05em;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:opacity .3s var(--sf-ease),transform .3s var(--sf-ease),visibility .3s var(--sf-ease);
}
.sf-totop[data-visible]{
  opacity:1;
  visibility:visible;
  transform:none;
}
.sf-totop:hover{border-color:var(--sf-neon-400);color:#fff}
.sf-totop__arrow{font-family:var(--sf-font-mono);line-height:1}

/* ---------- 8. 通用内容组件 ---------- */
.sf-container{
  max-width:var(--sf-shell);
  margin:0 auto;
  padding-left:var(--sf-pad);
  padding-right:var(--sf-pad);
}
.sf-section{padding:clamp(38px,5vw,72px) 0}
.sf-grid{display:grid;gap:var(--sf-gap)}
.sf-grid--cards{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.sf-grid--split{grid-template-columns:minmax(0,1fr)}
.sf-aside{display:block}

.sf-card{
  position:relative;
  padding:clamp(18px,2.2vw,26px);
  border-radius:var(--sf-radius-l);
  background:linear-gradient(155deg,rgba(18,48,90,.92),rgba(11,33,64,.96));
  border:1px solid rgba(28,70,119,.9);
  transition:transform .3s var(--sf-ease),border-color .3s var(--sf-ease),box-shadow .3s var(--sf-ease);
}
.sf-card:hover{
  transform:translateY(-3px);
  border-color:rgba(63,224,208,.5);
  box-shadow:0 20px 44px -24px rgba(63,224,208,.6);
}
.sf-card__title{margin:0 0 8px;font-size:19px}
.sf-card__meta{
  margin:12px 0 0;
  font-family:var(--sf-font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--sf-gray);
}
.sf-card p{margin:0;color:rgba(234,242,248,.82);font-size:15px}

.sf-tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 11px;
  border-radius:999px;
  border:1px solid rgba(63,224,208,.35);
  background:rgba(63,224,208,.08);
  color:var(--sf-neon-200);
  font-size:12px;
  letter-spacing:.08em;
  line-height:1.6;
}
.sf-tag--gold{
  border-color:rgba(242,180,65,.45);
  background:rgba(242,180,65,.1);
  color:var(--sf-gold-300);
}

.sf-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 22px;
  border-radius:999px;
  border:1px solid transparent;
  font-family:inherit;
  font-size:14.5px;
  font-weight:600;
  letter-spacing:.04em;
  cursor:pointer;
  transition:transform .25s var(--sf-ease),background .25s var(--sf-ease),border-color .25s var(--sf-ease),color .25s var(--sf-ease);
}
.sf-btn--primary{background:linear-gradient(120deg,#3FE0D0,#A6F7EF);color:#061428}
.sf-btn--primary:hover{transform:translateY(-2px)}
.sf-btn--ghost{
  border-color:rgba(63,224,208,.45);
  background:rgba(11,33,64,.6);
  color:var(--sf-neon-200);
}
.sf-btn--ghost:hover{border-color:var(--sf-neon-400);color:#fff}

.sf-crumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:16px 0;
  font-size:12.5px;
  letter-spacing:.05em;
  color:var(--sf-gray);
}
.sf-crumbs__link{color:var(--sf-gray);transition:color .2s var(--sf-ease)}
.sf-crumbs__link:hover,
.sf-crumbs__link:focus-visible{color:var(--sf-neon-200)}
.sf-crumbs__sep{opacity:.5}

/* 图片容器（页面阶段放置 img 与描述性 alt） */
.sf-media{
  position:relative;
  overflow:hidden;
  border-radius:var(--sf-radius-l);
  border:1px solid rgba(28,70,119,.8);
  background:var(--sf-grad-deep);
  aspect-ratio:16 / 10;
}
.sf-media--wide{aspect-ratio:21 / 9}
.sf-media--tall{aspect-ratio:4 / 5}
.sf-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.sf-media__caption{
  margin:9px 0 0;
  font-size:12.5px;
  line-height:1.7;
  color:var(--sf-gray);
}

/* 滚动淡入 */
.sf-js .sf-reveal{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .6s var(--sf-ease),transform .6s var(--sf-ease);
}
.sf-js .sf-reveal[data-shown]{
  opacity:1;
  transform:none;
}

/* ---------- 9. 断点：平板与桌面 ---------- */
@media (min-width:860px){
  .sf-utility__link{display:inline-block}
  .sf-navtoggle{display:none}
  .sf-rail__sub{display:inline}
  .sf-rail__quick{display:flex}
}

@media (min-width:900px){
  .sf-grid--split{
    grid-template-columns:minmax(0,7fr) minmax(0,3fr);
    align-items:start;
  }
  .sf-aside{padding-top:clamp(24px,3.4vw,58px)}
  .sf-grid--cards > .sf-card:nth-child(even){margin-top:clamp(14px,2.5vw,34px)}
}

@media (min-width:1100px){
  .sf-header{padding-left:var(--sf-rail-w)}
  .sf-masthead__kicker{display:block}
  main{padding-left:var(--sf-rail-w)}
  .sf-footer{padding-left:calc(var(--sf-rail-w) + var(--sf-pad))}

  body{padding-bottom:0}

  .sf-rail{
    left:0;right:auto;top:0;bottom:0;
    width:var(--sf-rail-w);
    flex-direction:column;
    align-items:stretch;
    gap:26px;
    padding:26px 20px 24px;
    background:var(--sf-grad-night);
    border-top:0;
    border-right:1px solid rgba(28,70,119,.9);
    overflow-x:hidden;
    overflow-y:auto;
  }
  .sf-rail__brand{flex-direction:column;align-items:flex-start;gap:3px}
  .sf-rail__glyph{
    width:34px;height:34px;
    border-radius:12px;
    margin-bottom:12px;
  }
  .sf-rail__name{font-size:19px;white-space:normal}
  .sf-rail__nav{display:block}
  .sf-rail__label{display:block}
  .sf-rail__quick{flex-direction:column}
  .sf-rail__quicklink{padding:10px 12px;border-radius:var(--sf-radius-s);font-size:13px;white-space:normal}
  .sf-save{
    width:100%;
    margin:auto 0 0;
    padding:12px 14px;
    font-size:13.5px;
    white-space:normal;
  }
  .sf-totop{bottom:26px;right:26px}
}

@media (max-width:859px){
  .sf-masthead{grid-template-columns:1fr auto}
  .sf-masthead__center{
    grid-column:1;
    justify-self:start;
    align-items:flex-start;
    text-align:left;
  }
  .sf-masthead__side{grid-column:2}

  .sf-nav{display:none}
  .sf-nav[data-open]{display:block}
  .sf-nav__list{
    flex-direction:column;
    flex-wrap:nowrap;
    gap:0;
    padding:6px 0 16px;
  }
  .sf-nav__link{
    padding:13px 8px;
    font-size:16px;
    letter-spacing:.04em;
    border-bottom:1px solid rgba(28,70,119,.55);
    border-left:3px solid transparent;
  }
  .sf-nav__link[aria-current="page"]{
    border-bottom-color:rgba(28,70,119,.55);
    border-left-color:var(--sf-neon-400);
    padding-left:15px;
  }

  .sf-footer__inner{grid-template-columns:minmax(0,1fr)}
  .sf-footer__brandcol,
  .sf-footer__cols,
  .sf-footer__contact{grid-column:1}
  .sf-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-totop{bottom:76px;right:14px}
}

@media (max-width:520px){
  .sf-footer__cols{grid-template-columns:minmax(0,1fr)}
  .sf-rail__name{font-size:14px}
  .sf-save{padding:8px 13px;font-size:12.5px}
}

/* ---------- 10. 减少动态效果 ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
  .sf-js .sf-reveal{opacity:1;transform:none}
  .sf-progress__bar{transition:none}
  .sf-totop{transition:none}
}

/* ---------- 11. 打印 ---------- */
@media print{
  .sf-rail,.sf-navtoggle,.sf-progress,.sf-totop{display:none !important}
  body{background:#fff;color:#111;padding:0}
  .sf-header,.sf-footer{background:#fff;border-color:#ccc}
}
