#screen-map-wrap { position: relative; overflow: hidden; }
#screen-map { width: 100%; height: 100%; }
/* 左上深色幕，保证 slogan 在浅色地图上也清晰可读；不挡地图交互 */
#screen-map-wrap::before { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
  background: linear-gradient(105deg, rgba(13,25,35,.72) 0%, rgba(13,25,35,.38) 32%, rgba(13,25,35,0) 60%); }
.eco-hero { position: absolute; left: 6%; top: 18%; z-index: 5; color: #fff; pointer-events: none;
  text-shadow: 0 2px 12px rgba(0,0,0,.55); max-width: 520px; }
.eco-hero h1 { font-size: 40px; font-weight: 800; line-height: 1.25; }
.eco-hero p { font-size: 16px; margin-top: 12px; color: #f9c601; }
.eco-map-state { position: absolute; left: 0; right: 0; top: 50%; text-align: center; color: #fff;
  z-index: 4; font-size: 14px; }
.eco-pop { width: 280px; font-family: inherit; }
.eco-pop .bname { font-size: 16px; font-weight: 700; color: #16223a; }
.eco-pop .btag { font-size: 12px; color: #5b6b86; margin-top: 3px; }
.eco-pop .teaser { font-size: 13px; line-height: 1.6; color: #37445c; background: #fafbfd;
  border-left: 3px solid #f9c601; padding: 8px 11px; border-radius: 0 6px 6px 0; margin: 10px 0; }
.eco-pop .dlbtn { display: block; text-align: center; background: #f9c601; color: #1d2329;
  font-size: 14px; font-weight: 700; padding: 10px; border-radius: 8px; cursor: pointer; }
.eco-pop .dlbtn small { display: block; font-weight: 400; font-size: 11px; opacity: .8; margin-top: 2px; }
.eco-pop .disc { font-size: 10px; color: #aaa; margin-top: 8px; }
.eco-modal-mask { position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 9999;
  display: none; align-items: center; justify-content: center; }
.eco-modal { background: #fff; border-radius: 12px; padding: 24px; width: 340px; }
.eco-modal h3 { font-size: 18px; color: #16223a; margin-bottom: 4px; }
.eco-modal p.sub { font-size: 12px; color: #5b6b86; margin-bottom: 16px; }
.eco-modal input { width: 100%; box-sizing: border-box; border: 1px solid #d8dee8; border-radius: 8px;
  padding: 10px 12px; font-size: 14px; margin-bottom: 10px; }
.eco-modal .agree { font-size: 12px; color: #5b6b86; margin: 6px 0 14px; display: flex; gap: 6px; }
.eco-modal .submit { width: 100%; background: #f9c601; color: #1d2329; font-weight: 700;
  border: none; border-radius: 8px; padding: 12px; font-size: 15px; cursor: pointer; }
.eco-modal .submit:disabled { background: #e4e7ec; color: #9aa3af; cursor: not-allowed; }
.eco-modal .err { color: #e5484d; font-size: 12px; min-height: 16px; }

/* 下载弹窗关闭按钮 */
.eco-modal { position: relative; }
.eco-modal-close { position: absolute; top: 10px; right: 14px; font-size: 24px; line-height: 1;
  color: #9aa3af; cursor: pointer; user-select: none; }
.eco-modal-close:hover { color: #1d2329; }

/* 首页底部细条(保留 ICP 备案) */
.footer.eco-footer-slim { position: fixed; left: 0; right: 0; bottom: 0; top: auto; z-index: 6;
  height: auto; min-height: 0; width: 100%; box-sizing: border-box;
  background: rgba(13,25,35,.78); color: rgba(255,255,255,.7); font-size: 12px; line-height: 1.6;
  text-align: center; padding: 7px 12px; }
.footer.eco-footer-slim span { margin: 0 8px; display: inline-block; }
.footer.eco-footer-slim a { color: rgba(255,255,255,.7); text-decoration: none; }
.footer.eco-footer-slim a:hover { color: #f9c601; }
