@charset "utf-8";
/* 国际金融报 — ifnews 补丁 */

body { background: #f2f2f2; }
#app { background: #f2f2f2; }

.gjb-topbar-inner {
  background-color: #ECECEC;
  padding: 3px 10px;
  overflow: hidden;
}
.gjb-top-search {
  float: right;
  width: 220px;
  max-width: 100%;
}

.gjb-logo-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  overflow: visible;
  padding: 12px 17px;
  background: #fff;
  box-sizing: border-box;
}
.gjb-logo-wrap {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 62%;
}
.gjb-logo-side {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 24px;
}
.site-brand-logo {
  display: block;
  height: 63px;
  width: auto;
  max-width: min(100%, 340px);
}

.gjb-search { display: flex; border: 1px solid #d8dce5; border-radius: 27px; overflow: hidden; background: #fff; }
.gjb-search input { flex: 1; border: 0; padding: 4px 12px; font-size: 13px; outline: none; min-width: 0; }
.gjb-search button { border: 0; background: #fff; padding: 4px 14px; cursor: pointer; color: #666; font-size: 13px; }

.gjb-carousel { position: relative; overflow: hidden; }
.gjb-carousel-track { position: relative; height: 188px; }
.gjb-carousel-item { display: none; position: absolute; left: 0; top: 0; width: 100%; }
.gjb-carousel-item.active { display: block; position: relative; }
.gjb-carousel-dots { text-align: right; padding: 6px 0 0; }
.gjb-carousel-dots span { display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: #ccc; margin-left: 4px; cursor: pointer; }
.gjb-carousel-dots span.on { background: #C82926; }

.detail-cont img { max-width: 100%; height: auto; }
.detail-cont p { line-height: 2em; margin: 1em 0; font-size: 18px; }

.centerBottom a { display: inline-block; padding: 4px 10px; margin: 0 3px; border: 1px solid #ddd; color: #666; text-decoration: none; }
.centerBottom a.now { background: #C82926; color: #fff; border-color: #C82926; }

.clearfi::after, .clearfix::after { content: ""; display: table; clear: both; }

@media (max-width: 900px) {
  .gjb-logo-inner { flex-wrap: wrap; padding: 10px 12px; }
  .gjb-logo-wrap { max-width: 100%; flex-basis: 100%; }
  .gjb-logo-side { width: 100%; justify-content: flex-start; }
  .site-brand-logo { height: 52px; max-width: 100%; }
}

@media (max-width: 640px) {
  .gjb-top-search { float: none; width: 100%; }
  .site-brand-logo { height: 44px; }
  .gjb-logo-side { gap: 16px; }
}
