*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-width:0;
  overflow-x:hidden;
  background:#E8F8EE;
  color:#222222;
  font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;
  font-size:16px;
  line-height:1.82;
}
body.drawer-open{overflow:hidden}
img,svg,video,canvas{max-width:100%}
a{color:#087F38}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.site-header{
  position:sticky;
  top:0;
  z-index:9999;
  width:100%;
  background:#00C853;
  box-shadow:0 8px 20px rgba(0,160,70,.18);
}
.header-inner{
  max-width:1180px;
  min-height:70px;
  margin:0 auto;
  padding:0 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.site-logo{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  text-decoration:none;
}
.site-logo img{
  display:block;
  height:40px;
  width:auto;
  max-width:160px;
  object-fit:contain;
}
.logo-placeholder{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:150px;
  height:40px;
  border-radius:10px;
  background:rgba(255,255,255,.22);
  color:#fff;
  font-size:22px;
  font-weight:800;
  letter-spacing:2px;
}
.nav-core{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-width:0;
  white-space:nowrap;
}
.nav-core a{
  color:#FFFFFF;
  padding:8px 10px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
  line-height:1.2;
}
.nav-core a.is-current,
.nav-core a:hover{
  background:rgba(255,255,255,.18);
  border-radius:999px;
}
.header-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.login-btn,.register-btn,.header-reg-btn{
  height:40px;min-width:88px;padding:0 16px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px;text-decoration:none;font-weight:700;white-space:nowrap;
}
.login-btn,.header-reg-btn{
  background:#FFFFFF;color:#087F38;
}
.register-btn{
  background:transparent;color:#FFFFFF;border:1px solid rgba(255,255,255,.7);
}
.header-reg-btn{display:none}
.menu-toggle{
  display:none;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:10px;
  background:#fff;
  color:#087F38;
  font-size:24px;
  font-weight:800;
  line-height:1;
}
.channel-bar{
  width:100%;
  background:#E8F8EE;
  border-bottom:1px solid rgba(0,200,83,.16);
}
.channel-inner{
  max-width:1180px;
  margin:0 auto;
  padding:9px 18px;
  display:flex;
  align-items:center;
  gap:6px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}
.channel-inner a{
  flex:0 0 auto;
  color:#2E5B3C;
  text-decoration:none;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
  padding:5px 8px;
  border-radius:999px;
}
.channel-inner a:hover,.channel-inner a.is-current{
  color:#00A844;
  background:#fff;
}
.site-main{
  width:100%;
  min-height:60vh;
  overflow:hidden;
}
.page-shell,.section-inner{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
}
.hero{
  padding:64px 0 56px;
}
.hero-grid,.split{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);
  gap:44px;
  align-items:center;
}
.hero-copy h1,.page-hero h1{
  margin:0 0 18px;
  color:#14331F;
  font-size:clamp(36px,4.4vw,48px);
  line-height:1.14;
  letter-spacing:-.02em;
}
.hero-copy p,.page-hero p{
  margin:0 0 16px;
  color:#37443C;
  font-size:18px;
}
.eyebrow{
  display:inline-flex;
  margin-bottom:14px;
  padding:5px 10px;
  border-radius:999px;
  background:#fff;
  color:#087F38;
  border:1px solid rgba(0,200,83,.16);
  font-size:14px;
  font-weight:800;
}
.main-btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:42px;min-width:96px;padding:0 20px;
  background:#00C853;color:#FFFFFF;border-radius:999px;
  text-decoration:none;font-weight:700;
  box-shadow:0 8px 18px rgba(0,200,83,.28);
}
.text-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#087F38;
  font-weight:700;
  text-decoration:none;
}
.text-link:hover{color:#00A844}
.media{
  position:relative;width:100%;max-width:100%;overflow:hidden;
  border-radius:16px;background:#E8F8EE;
  aspect-ratio:16/9;
}
.media > img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:contain;object-position:center center;display:block;
}
.media-large{min-height:220px;max-height:252px}
.media-card{height:168px;aspect-ratio:auto}
.media-placeholder{
  position:absolute;
  inset:0;
  display:block;
  background:
    radial-gradient(circle at 28% 35%,rgba(0,200,83,.12) 0 9%,transparent 10%),
    radial-gradient(circle at 72% 62%,rgba(0,168,68,.10) 0 11%,transparent 12%),
    linear-gradient(135deg,#F4FBF6,#E8F8EE);
}
.quick-strip{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto 18px;
  display:flex;
  gap:10px;
  overflow-x:auto;
  padding:2px 0 10px;
  scrollbar-width:thin;
}
.quick-strip a{
  flex:0 0 auto;
  padding:8px 15px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(0,200,83,.16);
  color:#087F38;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.section{
  padding:58px 0;
}
.section.alt{background:#F4FBF6}
.section.white{background:#fff}
.section-title{
  max-width:820px;
  margin:0 0 26px;
}
.section-title h2{
  margin:0 0 10px;
  color:#14331F;
  font-size:30px;
  line-height:1.25;
}
.section-title p{margin:0;color:#5B6B62}
.channel-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.channel-card,.info-card,.feature-card,.note-card,.faq-item,.article-box,.step-item,.compare-card{
  min-width:0;
  border:1px solid rgba(0,200,83,.16);
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 28px rgba(8,127,56,.08);
}
.channel-card{
  padding:20px;
  min-height:166px;
  display:flex;
  flex-direction:column;
}
.channel-card h3,.info-card h3,.feature-card h3,.compare-card h3{
  margin:0 0 8px;
  color:#14331F;
  font-size:19px;
  line-height:1.35;
}
.channel-card p,.info-card p,.feature-card p,.compare-card p{
  margin:0 0 14px;
  color:#5B6B62;
}
.channel-card .text-link{margin-top:auto}
.three-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.two-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.feature-wall{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.info-card,.feature-card,.compare-card{padding:24px}
.page-hero{
  padding:56px 0 28px;
}
.page-hero .reading-width{max-width:860px}
.reading-width{
  width:min(860px,100%);
}
.article-wrap{
  width:min(860px,calc(100% - 36px));
  margin:0 auto;
  padding:18px 0 64px;
}
.article-wrap.wide{width:min(1180px,calc(100% - 36px))}
.article-wrap h2{
  margin:36px 0 12px;
  color:#14331F;
  font-size:27px;
  line-height:1.3;
}
.article-wrap h3{
  margin:24px 0 8px;
  color:#14331F;
  font-size:20px;
}
.article-wrap p{margin:0 0 17px}
.article-wrap ul,.article-wrap ol{
  margin:10px 0 20px;
  padding-left:24px;
}
.article-wrap li{margin:7px 0}
.article-box{
  padding:24px;
  margin:20px 0;
}
.article-box.soft{background:#F4FBF6}
.notice{
  padding:18px 20px;
  border-left:4px solid #00C853;
  border-radius:12px;
  background:#F4FBF6;
  color:#37443C;
  margin:20px 0;
}
.directory{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0 26px;
}
.directory a{
  display:block;
  padding:14px 16px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(0,200,83,.16);
  color:#087F38;
  font-weight:700;
  text-decoration:none;
}
.step-list{display:grid;gap:14px;margin:20px 0}
.step-item{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:14px;
  padding:18px;
  align-items:start;
}
.step-no{
  width:40px;height:40px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;
  background:#00C853;color:#fff;font-weight:800;
}
.step-item h3{margin:0 0 5px}
.step-item p{margin:0}
.compare-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:22px 0;
}
.quote-note{
  margin:24px 0;
  padding:22px 24px;
  border-radius:16px;
  background:#14331F;
  color:#F4FBF6;
}
.quote-note strong{color:#fff}
.faq-list{display:grid;gap:14px}
.faq-item{padding:22px}
.faq-item h2,.faq-item h3{
  margin:0 0 8px;
  color:#14331F;
  font-size:20px;
}
.faq-item p{margin:0}
.related-links{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:18px 0 4px;
}
.related-links a{
  padding:7px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(0,200,83,.16);
  text-decoration:none;
  font-weight:700;
}
.app-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);
  gap:28px;
  align-items:center;
  padding:26px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(0,200,83,.16);
}
.safety-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.safety-grid .note-card{padding:24px}
.safety-grid h3{margin:0 0 8px;color:#14331F}
.safety-grid p{margin:0}
.side-float{
  position:fixed;
  right:14px;
  top:50%;
  z-index:9000;
  transform:translateY(-50%);
  width:96px;
  display:flex;
  flex-direction:column;
  gap:7px;
}
.side-float a,.side-float button{
  width:100%;
  min-height:40px;
  padding:8px 7px;
  border:1px solid rgba(0,200,83,.16);
  border-radius:12px;
  background:#fff;
  color:#087F38;
  text-align:center;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
  box-shadow:0 8px 18px rgba(8,127,56,.08);
}
.side-float .side-reg{
  background:#00C853;
  color:#fff;
}
.side-float button{cursor:pointer}
.site-footer{
  background:#1B1F1C;
  color:#D7E6DB;
  padding:50px 0 20px;
}
.footer-grid{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto;
  display:grid;
  grid-template-columns:1.5fr repeat(3,1fr);
  gap:30px;
}
.footer-grid h2{
  margin:0 0 12px;
  color:#fff;
  font-size:17px;
}
.footer-grid a{
  display:block;
  width:max-content;
  max-width:100%;
  margin:7px 0;
  color:#D7E6DB;
  text-decoration:none;
}
.footer-grid a:hover{color:#fff}
.footer-brand img{
  display:block;
  width:auto;
  height:40px;
  max-width:160px;
  object-fit:contain;
  margin-bottom:14px;
}
.footer-brand p{margin:0;max-width:350px}
.footer-logo-placeholder{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:150px;
  height:40px;
  margin-bottom:14px;
  border-radius:10px;
  background:#2B352E;
  color:#fff;
  font-weight:800;
}
.footer-bottom{
  width:min(1180px,calc(100% - 36px));
  margin:30px auto 0;
  padding-top:18px;
  border-top:1px solid rgba(215,230,219,.16);
  display:flex;
  justify-content:space-between;
  gap:24px;
  color:#B9C7BD;
  font-size:13px;
}
.footer-bottom p{margin:0}
.mobile-bottom{display:none}

/* 手机端遮罩点击补丁：保持默认不可见且不拦截页面点击 */
.mobile-drawer,
.drawer-mask{display:none}


@media(max-width:1280px){
  .side-float{display:none}
}
@media(min-width:1281px){
  .site-main{padding-right:64px}
}

@media(max-width:1180px){
  .nav-core a{padding:8px 7px;font-size:14px}
  .header-inner{gap:9px}
  .header-actions{gap:5px}
  .login-btn,.register-btn{min-width:70px;padding:0 12px}
  .side-float{display:none}
}
@media(max-width:980px){
.mobile-drawer{
  display:block;
  position:fixed;
  inset:0 auto 0 0;
  width:min(84vw,320px);
  background:#fff;
  z-index:12000;
  transform:translateX(-105%);
  transition:transform .2s ease;
  box-shadow:18px 0 40px rgba(20,51,31,.18);
}
.mobile-drawer.is-open{transform:translateX(0)}
.drawer-mask{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(20,51,31,.42);
  z-index:11000;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}
.drawer-mask.is-visible{
  display:block;
  opacity:1;
  pointer-events:auto;
}
}
@media(max-width:980px){
  body{padding-bottom:64px}
  .site-header{position:sticky}
  .header-inner{
    min-height:62px;
    display:grid;
    grid-template-columns:48px minmax(0,1fr) 100px;
    gap:8px;
    padding:0 12px;
  }
  .menu-toggle{display:inline-flex;justify-self:start}
  .site-logo{justify-self:center;min-width:0}
  .site-logo img{height:36px;max-width:142px}
  .logo-placeholder{width:132px;height:36px;font-size:19px}
  .nav-core,.header-actions{display:none}
  .header-reg-btn{
    display:inline-flex;
    justify-self:end;
    min-width:94px;
    padding:0 12px;
  }
  .channel-bar{display:none}
  .drawer-head{
    height:64px;
    padding:10px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    border-bottom:1px solid #E6EFE8;
  }
  .drawer-logo{display:flex;align-items:center}
  .drawer-logo img{
    width:auto;
    height:36px;
    max-width:148px;
    object-fit:contain;
  }
  .drawer-close{
    width:40px;height:40px;
    border:0;border-radius:10px;
    background:#E8F8EE;color:#087F38;
    font-size:28px;line-height:1;
  }
  .drawer-scroll{
    height:calc(100vh - 64px);
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:8px 14px 26px;
  }
  .drawer-group{
    padding:12px 0;
    border-bottom:1px solid #EDF3EE;
  }
  .drawer-group h2{
    margin:0 0 8px;
    color:#14331F;
    font-size:14px;
  }
  .drawer-group a{
    display:inline-flex;
    margin:3px 5px 3px 0;
    padding:7px 9px;
    border-radius:9px;
    color:#2E5B3C;
    background:#F4FBF6;
    text-decoration:none;
    font-size:14px;
  }
  .hero{padding:42px 0}
  .hero-grid,.split,.app-panel{
    grid-template-columns:1fr;
    gap:24px;
  }
  .hero-copy h1,.page-hero h1{
    font-size:clamp(28px,8vw,34px);
  }
  .hero-copy p,.page-hero p{font-size:16px}
  .section{padding:44px 0}
  .channel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .three-grid,.feature-wall{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mobile-bottom{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:10000;
    min-height:58px;
    padding-bottom:env(safe-area-inset-bottom);
    background:#fff;
    border-top:1px solid rgba(0,200,83,.16);
    box-shadow:0 -8px 22px rgba(8,127,56,.08);
  }
  .mobile-bottom a{
    display:flex;
    align-items:center;
    justify-content:center;
    color:#087F38;
    text-decoration:none;
    font-weight:700;
    font-size:14px;
  }
  .footer-bottom{padding-bottom:18px}
}
@media(max-width:720px){
  .page-shell,.section-inner,.article-wrap,.article-wrap.wide,.quick-strip,.footer-grid,.footer-bottom{
    width:min(100% - 28px,1180px);
  }
  .section-title h2{font-size:25px}
  .page-hero{padding:38px 0 18px}
  .channel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .channel-card{padding:16px;min-height:154px}
  .three-grid,.two-grid,.feature-wall,.safety-grid,.compare-grid,.directory{
    grid-template-columns:1fr;
  }
  .info-card,.feature-card,.compare-card,.article-box,.faq-item{padding:20px}
  .article-wrap{padding-bottom:48px}
  .article-wrap h2{font-size:24px}
  .footer-grid{grid-template-columns:1fr;gap:22px}
  .footer-bottom{flex-direction:column;gap:8px}
  .media-large{min-height:0;max-height:none}
}
@media(max-width:430px){
  .header-inner{grid-template-columns:44px minmax(0,1fr) 92px;padding:0 9px}
  .site-logo img{max-width:128px;height:34px}
  .logo-placeholder{width:118px;height:34px;font-size:17px}
  .header-reg-btn{min-width:88px;height:38px;font-size:14px}
  .menu-toggle{width:38px;height:38px}
  .channel-card p{font-size:14px}
  .step-item{grid-template-columns:38px 1fr;padding:16px;gap:10px}
  .step-no{width:36px;height:36px}
}
