/* ============================================================
   太阳鑫娱 · 共享 Site Kit
   高原日出编辑部版式 / 非对称网格 / 深色天幕 + 金橙点亮
   ============================================================ */

:root{
  --sb-night:#0D1030;
  --sb-indigo:#1A2050;
  --sb-sun:#FF8A1F;
  --sb-amber:#FFC24B;
  --sb-lake:#17B3C9;
  --sb-lake-deep:#0E7C8C;
  --sb-dusk:#6C4BE0;
  --sb-cream:#F7F2E8;
  --sb-white:#FFFFFF;
  --sb-ink:#26293D;
  --sb-mist:#9AA3BF;
  --sb-muted:#5A5F78;

  --sb-wrap:1240px;
  --sb-radius-l:20px;
  --sb-radius-m:16px;
  --sb-radius-s:12px;

  --sb-ease:cubic-bezier(.22,.61,.36,1);

  --sb-font-display:"Noto Sans SC","Source Han Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
  --sb-font-body:"Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sb-font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,"Noto Sans Mono CJK SC",monospace;

  --sb-shadow-card:0 24px 50px -40px rgba(13,16,48,.80);
  --sb-shadow-card-hover:0 32px 62px -38px rgba(13,16,48,.92);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:96px;
}
body{
  margin:0;
  background:var(--sb-cream);
  color:var(--sb-ink);
  font-family:var(--sb-font-body);
  font-size:17px;
  line-height:1.75;
  font-weight:400;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{
  margin:0;
  font-family:var(--sb-font-display);
  font-weight:800;
  line-height:1.08;
  letter-spacing:-.02em;
}
p{margin:0 0 1.2em;}
p:last-child{margin-bottom:0;}
a{color:var(--sb-lake-deep);}
img{max-width:100%;display:block;}
ul,ol{margin:0;padding:0;list-style:none;}
button{font:inherit;color:inherit;}
:focus-visible{
  outline:2px solid var(--sb-lake);
  outline-offset:3px;
  border-radius:6px;
}
.sb-header :focus-visible{outline-color:var(--sb-amber);}

/* ---------- 布局骨架 ---------- */
.sb-wrap{
  width:100%;
  max-width:var(--sb-wrap);
  margin-inline:auto;
  padding-inline:clamp(16px,4vw,40px);
}
.sb-main{display:block;}
.sb-prose{max-width:38em;}
.sb-prose p{margin-bottom:1.2em;}

.sb-section{
  padding-block:clamp(48px,8vw,96px);
  position:relative;
}
.sb-section__index{
  display:block;
  font-family:var(--sb-font-body);
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.18em;
  color:var(--sb-lake-deep);
  margin-bottom:14px;
}
.sb-section__index::before{
  content:"";
  display:inline-block;
  width:22px;
  height:3px;
  border-radius:2px;
  background:var(--sb-sun);
  margin-right:10px;
  vertical-align:middle;
}
.sb-section__title{
  font-size:clamp(1.9rem,4.4vw,3.4rem);
  font-weight:800;
  margin-bottom:16px;
}
.sb-section__lede{
  max-width:38em;
  font-size:1.05rem;
  color:var(--sb-muted);
  margin-bottom:0;
}
.sb-rule{
  height:1px;
  border:0;
  margin:0;
  background:linear-gradient(90deg,rgba(23,179,201,.75),rgba(23,179,201,0));
}

/* ---------- 网格 ---------- */
.sb-grid{display:grid;gap:clamp(20px,3vw,32px);}
.sb-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));}
.sb-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.sb-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));}

/* ---------- 卡片与展签 ---------- */
.sb-card{
  position:relative;
  background:var(--sb-white);
  border:1px solid rgba(23,179,201,.35);
  border-radius:var(--sb-radius-m);
  padding:clamp(20px,2.6vw,30px);
  box-shadow:var(--sb-shadow-card);
  transition:transform .24s var(--sb-ease),box-shadow .24s var(--sb-ease),border-color .24s var(--sb-ease);
}
.sb-card:hover{
  transform:translateY(-6px);
  border-color:var(--sb-lake);
  box-shadow:var(--sb-shadow-card-hover);
}
.sb-card__label{
  display:inline-block;
  background:var(--sb-amber);
  color:#4A2C00;
  font-size:12px;
  font-weight:700;
  letter-spacing:.10em;
  padding:4px 11px;
  border-radius:999px;
  margin-bottom:14px;
}
.sb-card__title{
  font-size:1.25rem;
  font-weight:800;
  margin-bottom:10px;
}
.sb-card__text{
  font-size:.98rem;
  color:var(--sb-muted);
  margin:0;
}
.sb-plaque{
  border-left:2px solid var(--sb-lake);
  padding:6px 0 6px 14px;
  font-size:13px;
  line-height:1.7;
  color:var(--sb-muted);
  margin:0;
}
.sb-tag{
  display:inline-block;
  font-size:12px;
  font-weight:600;
  letter-spacing:.10em;
  padding:4px 11px;
  border-radius:999px;
  border:1px solid rgba(108,75,224,.5);
  background:rgba(108,75,224,.08);
  color:var(--sb-dusk);
}

/* ---------- 数据 ---------- */
.sb-data{
  font-family:var(--sb-font-mono);
  font-size:15px;
  letter-spacing:.02em;
  font-variant-numeric:tabular-nums;
  line-height:1.85;
}

/* ---------- 按钮 ---------- */
.sb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:13px 22px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:15px;
  font-weight:700;
  line-height:1;
  letter-spacing:.02em;
  text-decoration:none;
  cursor:pointer;
  transition:transform .2s var(--sb-ease),background-color .2s var(--sb-ease),color .2s var(--sb-ease),border-color .2s var(--sb-ease);
}
.sb-btn:hover{transform:translateY(-2px);}
.sb-btn--sun{background:var(--sb-sun);color:#1A1205;}
.sb-btn--sun:hover{background:var(--sb-amber);}
.sb-btn--lake{background:var(--sb-lake);color:#052A30;}
.sb-btn--lake:hover{background:var(--sb-lake-deep);color:var(--sb-cream);}
.sb-btn--outline{border-color:rgba(38,41,61,.35);color:var(--sb-ink);}
.sb-btn--outline:hover{border-color:var(--sb-lake-deep);color:var(--sb-lake-deep);}

/* ---------- 面包屑 ---------- */
.sb-breadcrumb{
  font-size:13px;
  color:var(--sb-muted);
  padding-block:18px 0;
}
.sb-breadcrumb__list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.sb-breadcrumb__item{
  display:flex;
  align-items:center;
  gap:8px;
}
.sb-breadcrumb__item + .sb-breadcrumb__item::before{
  content:"／";
  color:var(--sb-mist);
}
.sb-breadcrumb__link{
  color:var(--sb-lake-deep);
  text-decoration:none;
  border-bottom:1px solid transparent;
}
.sb-breadcrumb__link:hover{border-bottom-color:currentColor;}
.sb-breadcrumb__current{color:var(--sb-muted);}

/* ---------- 响应式图片容器 ---------- */
.sb-media{
  position:relative;
  overflow:hidden;
  border-radius:var(--sb-radius-l);
  border:1px solid rgba(23,179,201,.35);
  background:
    radial-gradient(120% 90% at 72% 8%,rgba(255,194,75,.55),transparent 58%),
    linear-gradient(140deg,var(--sb-indigo) 0%,var(--sb-lake-deep) 58%,var(--sb-sun) 118%);
  min-height:180px;
}
.sb-media__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.sb-media__caption{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  margin:0;
  padding:8px 12px;
  border-radius:10px;
  border-left:2px solid var(--sb-amber);
  background:rgba(13,16,48,.80);
  color:var(--sb-cream);
  font-size:12.5px;
  letter-spacing:.04em;
  line-height:1.6;
}
.sb-media--wide{aspect-ratio:16/9;}
.sb-media--tall{aspect-ratio:3/4;}
.sb-media--square{aspect-ratio:1/1;}

/* ---------- 跳转链接 ---------- */
.sb-skip{
  position:absolute;
  left:16px;
  top:-120px;
  z-index:140;
  background:var(--sb-night);
  color:var(--sb-cream);
  padding:12px 20px;
  border-radius:0 0 var(--sb-radius-s) var(--sb-radius-s);
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  transition:top .2s var(--sb-ease);
}
.sb-skip:focus{top:0;}

/* ============================================================
   页头
   ============================================================ */
.sb-header{
  position:fixed;
  inset:0 0 auto 0;
  z-index:90;
  color:var(--sb-cream);
  background:linear-gradient(180deg,rgba(13,16,48,.74) 0%,rgba(13,16,48,.34) 68%,rgba(13,16,48,0) 100%);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:background-color .24s var(--sb-ease),color .24s var(--sb-ease),box-shadow .24s var(--sb-ease);
}
.sb-header[data-scrolled]{
  color:var(--sb-ink);
  background:rgba(247,242,232,.96);
  box-shadow:0 1px 0 rgba(23,179,201,.45),0 22px 46px -34px rgba(13,16,48,.75);
}
.sb-header__bar{
  display:flex;
  align-items:center;
  gap:clamp(16px,2.4vw,36px);
  min-height:78px;
  padding-block:10px;
}
.sb-progress{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  pointer-events:none;
}
.sb-progress__bar{
  display:block;
  width:0;
  height:100%;
  background:linear-gradient(90deg,var(--sb-sun),var(--sb-amber) 45%,var(--sb-lake));
  transition:width .12s linear;
}

/* 品牌 */
.sb-brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
  text-decoration:none;
  color:inherit;
}
.sb-brand__mark{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:13px;
  background:linear-gradient(145deg,var(--sb-sun),var(--sb-amber));
  color:var(--sb-night);
  font-family:var(--sb-font-display);
  font-weight:900;
  font-size:19px;
  line-height:1;
  box-shadow:0 10px 22px -12px rgba(255,138,31,.9);
}
.sb-brand__text{display:flex;flex-direction:column;line-height:1.15;}
.sb-brand__name{
  font-family:var(--sb-font-display);
  font-size:17px;
  font-weight:800;
  letter-spacing:.06em;
}
.sb-brand__tag{
  font-size:11px;
  font-weight:500;
  letter-spacing:.18em;
  opacity:.72;
}

/* 主导航（桌面） */
.sb-nav{
  flex:1 1 auto;
  display:flex;
  justify-content:center;
  align-items:center;
}
.sb-nav__list{
  display:flex;
  align-items:center;
  gap:clamp(10px,1.7vw,26px);
}
.sb-nav__link{
  position:relative;
  display:inline-block;
  padding:9px 2px;
  color:inherit;
  font-size:15px;
  font-weight:600;
  letter-spacing:.04em;
  text-decoration:none;
  white-space:nowrap;
}
.sb-nav__link::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:3px;
  height:2px;
  border-radius:2px;
  background:var(--sb-sun);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .24s var(--sb-ease);
}
.sb-nav__link:hover::after,
.sb-nav__link:focus-visible::after{transform:scaleX(1);}
.sb-nav__link[aria-current="page"]{color:var(--sb-sun);}
.sb-nav__link[aria-current="page"]::after{transform:scaleX(1);}
.sb-nav__actions{display:none;}

/* 页头行动按钮 */
.sb-header__actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}
.sb-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  border-radius:999px;
  border:1px solid transparent;
  font-size:14px;
  font-weight:700;
  line-height:1;
  letter-spacing:.04em;
  text-decoration:none;
  white-space:nowrap;
  transition:transform .2s var(--sb-ease),background-color .2s var(--sb-ease),color .2s var(--sb-ease),border-color .2s var(--sb-ease);
}
.sb-cta--solid{
  background:var(--sb-sun);
  color:#1A1205;
  box-shadow:0 14px 28px -16px rgba(255,138,31,.95);
}
.sb-cta--solid:hover{background:var(--sb-amber);transform:translateY(-2px);}
.sb-cta--ghost{
  border-color:rgba(247,242,232,.5);
  color:var(--sb-cream);
}
.sb-cta--ghost:hover{border-color:var(--sb-lake);color:var(--sb-lake);}
.sb-header[data-scrolled] .sb-cta--ghost{
  border-color:rgba(38,41,61,.32);
  color:var(--sb-ink);
}
.sb-header[data-scrolled] .sb-cta--ghost:hover{
  border-color:var(--sb-lake-deep);
  color:var(--sb-lake-deep);
}

/* 移动端菜单按钮 */
.sb-navtoggle{
  display:none;
  align-items:center;
  gap:10px;
  padding:9px 16px;
  border-radius:999px;
  border:1px solid currentColor;
  background:transparent;
  font-size:13px;
  font-weight:600;
  letter-spacing:.14em;
  cursor:pointer;
  transition:border-color .2s var(--sb-ease),color .2s var(--sb-ease);
}
.sb-navtoggle:hover{border-color:var(--sb-lake);color:var(--sb-lake);}
.sb-navtoggle__box{
  display:inline-flex;
  flex-direction:column;
  gap:4px;
  width:18px;
}
.sb-navtoggle__bar{
  display:block;
  height:2px;
  border-radius:2px;
  background:currentColor;
  transition:transform .22s var(--sb-ease),opacity .22s var(--sb-ease);
}
.sb-header[data-open] .sb-navtoggle__bar:nth-child(1){transform:translateY(6px) rotate(45deg);}
.sb-header[data-open] .sb-navtoggle__bar:nth-child(2){opacity:0;}
.sb-header[data-open] .sb-navtoggle__bar:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

/* ============================================================
   页脚
   ============================================================ */
.sb-footer{
  position:relative;
  margin-top:clamp(56px,8vw,104px);
  border-top:1px solid rgba(23,179,201,.45);
  background:linear-gradient(180deg,#FBF7EF 0%,var(--sb-cream) 46%,#F1E9D8 100%);
  color:var(--sb-ink);
}
.sb-footer::before{
  content:"";
  position:absolute;
  top:-1px;
  left:0;
  width:min(340px,42%);
  height:2px;
  background:linear-gradient(90deg,var(--sb-sun),var(--sb-amber),rgba(255,194,75,0));
}
.sb-footer__inner{padding-block:0;}
.sb-footer__top{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,1.9fr);
  gap:clamp(32px,5vw,72px);
  padding-block:clamp(44px,6vw,80px) clamp(32px,4vw,56px);
}
.sb-footer__logo{
  font-family:var(--sb-font-display);
  font-size:1.6rem;
  font-weight:900;
  letter-spacing:.04em;
  margin-bottom:10px;
}
.sb-footer__closing{
  font-size:1rem;
  color:var(--sb-muted);
  margin-bottom:22px;
}
.sb-footer__cols{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(24px,3vw,40px);
}
.sb-footer__title{
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
  color:var(--sb-lake-deep);
  margin-bottom:14px;
}
.sb-footer__list{
  display:flex;
  flex-direction:column;
  gap:9px;
  font-size:14.5px;
  color:var(--sb-muted);
}
.sb-footer__link{
  color:var(--sb-ink);
  text-decoration:none;
  border-bottom:1px solid rgba(23,179,201,.35);
  transition:color .2s var(--sb-ease),border-color .2s var(--sb-ease);
}
.sb-footer__link:hover{
  color:var(--sb-lake-deep);
  border-bottom-color:var(--sb-sun);
}
.sb-footer__mono{
  font-family:var(--sb-font-mono);
  font-size:13.5px;
  letter-spacing:.02em;
  font-variant-numeric:tabular-nums;
  color:var(--sb-ink);
}
.sb-footer__bottom{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px 28px;
  border-top:1px solid rgba(154,163,191,.42);
  padding-block:20px 34px;
}
.sb-footer__legal{
  margin:0;
  font-size:13px;
  color:var(--sb-muted);
}

/* ============================================================
   显现动画
   ============================================================ */
.sb-js [data-reveal]{
  opacity:0;
  transform:translateY(24px);
  transition:opacity .42s var(--sb-ease),transform .42s var(--sb-ease);
}
.sb-js [data-reveal].is-in{
  opacity:1;
  transform:none;
}

/* ============================================================
   响应式
   ============================================================ */
@media (max-width:1000px){
  .sb-header__bar{min-height:68px;}
  .sb-header__actions{display:none;}
  .sb-brand__tag{display:none;}
  .sb-navtoggle{display:inline-flex;}

  .sb-nav{
    position:absolute;
    left:0;
    right:0;
    top:100%;
    display:block;
    background:var(--sb-night);
    border-top:1px solid rgba(23,179,201,.45);
    box-shadow:0 34px 60px -30px rgba(0,0,0,.85);
    padding:12px clamp(16px,4vw,32px) 26px;
    max-height:calc(100vh - 68px);
    overflow-y:auto;
    opacity:0;
    visibility:hidden;
    transform:translateY(-14px);
    transition:opacity .22s var(--sb-ease),transform .22s var(--sb-ease),visibility .22s var(--sb-ease);
  }
  .sb-header[data-open] .sb-nav{
    opacity:1;
    visibility:visible;
    transform:none;
  }
  .sb-nav__list{
    flex-direction:column;
    align-items:stretch;
    gap:0;
  }
  .sb-nav__item{border-bottom:1px solid rgba(154,163,191,.22);}
  .sb-nav__link{
    display:block;
    padding:15px 2px;
    font-size:17px;
    color:var(--sb-cream);
  }
  .sb-nav__link::after{display:none;}
  .sb-nav__link[aria-current="page"]{color:var(--sb-amber);}
  .sb-nav__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
  }
  .sb-nav__actions .sb-cta{flex:1 1 170px;}
  .sb-header[data-scrolled] .sb-nav__actions .sb-cta--ghost{
    border-color:rgba(247,242,232,.5);
    color:var(--sb-cream);
  }

  .sb-grid--3,.sb-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));}

  .sb-footer__top{grid-template-columns:minmax(0,1fr);}
  .sb-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:640px){
  body{font-size:16px;}
  .sb-section__title{font-size:clamp(1.75rem,7vw,2.4rem);}
  .sb-grid--2,.sb-grid--3,.sb-grid--4{grid-template-columns:minmax(0,1fr);}
  .sb-footer__cols{grid-template-columns:minmax(0,1fr);gap:28px;}
  .sb-footer__bottom{flex-direction:column;align-items:flex-start;}
  .sb-cta{padding:10px 15px;font-size:13px;}
  .sb-navtoggle__label{display:none;}
  .sb-navtoggle{padding:9px 13px;}
}

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