.icon {
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  vertical-align: -0.135em;
}
/* 图标精灵容器：不占位、不可见 */
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }

.card__icon .icon       { width: 22px; height: 22px; }
.plat-row__icon .icon   { width: 25px; height: 25px; }
.contact-item__icon .icon { width: 19px; height: 19px; }
.btn__icon .icon        { width: 14px; height: 14px; stroke-width: 2; }
.fab .icon              { width: 22px; height: 22px; }
.nav__lang .icon        { width: 15px; height: 15px; }
.footer__list .icon     { width: 15px; height: 15px; color: var(--muted); }
.map-box__pin .icon     { width: 22px; height: 22px; color: var(--accent); }
.hero__tag .icon        { width: 15px; height: 15px; }
.step .icon             { width: 15px; height: 15px; color: var(--accent); }

/* 语言代码徽标（替代国旗 emoji） */
.lang-code {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.08em;
  line-height: 1;
  color: var(--muted-2);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 3px 4px;
  margin-right: 7px;
  vertical-align: 1px;
}
.nav__lang-menu button.is-active .lang-code { color: var(--accent); border-color: rgba(0,224,164,.4); }

.matrix__key .icon { width: 16px; height: 16px; color: var(--accent); }
