:root {
  color-scheme: light;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: clamp(32px, 10vw, 75px);
  --netease-red: #ef4645;
  --netease-deep-red: #ee1a1a;
  --text: #333;
  --muted: #999;
  --line: #eee;
  --soft: #f8f8f8;
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  min-width: 320px;
  min-height: 100%;
  margin: 0;
  background: #f1f1f1;
  color: var(--text);
  font-size: .42667rem;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, .08);
}

button,
input {
  font: inherit;
}

button {
  -webkit-tap-highlight-color: rgba(0, 0, 0, .08);
}

.home-main {
  width: 100%;
  max-width: 10rem;
  min-height: 100vh;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 0 .32rem rgba(0, 0, 0, .05);
}

.home-topHeader {
  position: relative;
  z-index: 30;
  display: flex;
  align-items: center;
  width: 100%;
  height: 1.28rem;
  background: var(--netease-red);
  color: #fff;
}

.s-logo {
  box-sizing: content-box;
  align-self: stretch;
  flex: 0 0 auto;
  width: 1.2rem;
  padding: 0 .26667rem 0 .56rem;
  overflow: hidden;
  background: url("https://static.ws.126.net/163/wap/f2e/ssr/static/media/logo.59f1e7f191ea16f90f29.png") 50% no-repeat;
  background-size: 1.2rem .58667rem;
  font-size: 0;
  white-space: nowrap;
}

.home-search {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  min-width: 0;
  height: .85333rem;
  margin: 0 .4rem 0 0;
  padding: 0 .21333rem;
  border-radius: .46667rem;
  background: rgba(0, 0, 0, .1);
}

.search-icon {
  position: relative;
  flex: 0 0 auto;
  width: .36rem;
  height: .36rem;
  margin-right: .10667rem;
  border: .04rem solid rgba(255, 255, 255, .95);
  border-radius: 50%;
}

.search-icon::after {
  position: absolute;
  right: -.12rem;
  bottom: -.06rem;
  width: .16rem;
  height: .04rem;
  border-radius: .03rem;
  background: rgba(255, 255, 255, .95);
  content: "";
  transform: rotate(45deg);
  transform-origin: center;
}

.home-search input {
  width: 100%;
  min-width: 0;
  height: 100%;
  padding: 0 .08rem;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font-size: .4rem;
}

.home-search input::placeholder {
  color: rgba(255, 255, 255, .96);
  opacity: 1;
}

.home-search input::-webkit-search-cancel-button {
  filter: brightness(0) invert(1);
}

.s-user {
  position: relative;
  flex: 0 0 auto;
  width: .85333rem;
  height: .85333rem;
  margin-right: .37333rem;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, .1);
}

.s-user span::before,
.s-user span::after {
  position: absolute;
  left: 50%;
  border: .035rem solid rgba(255, 255, 255, .95);
  content: "";
  transform: translateX(-50%);
}

.s-user span::before {
  top: .16rem;
  width: .2rem;
  height: .2rem;
  border-radius: 50%;
}

.s-user span::after {
  bottom: .13rem;
  width: .42rem;
  height: .22rem;
  border-radius: .28rem .28rem .08rem .08rem;
  border-bottom: 0;
}

.home-subNav-wrap {
  height: 1.26667rem;
}

.home-subNav {
  position: relative;
  display: flex;
  width: 100%;
  max-width: 10rem;
  height: 1.26667rem;
  border-bottom: 1px solid var(--line);
  background: #fff;
  font-size: .45333rem;
}

.home-subNav .nav-item {
  display: flex;
  flex: 1 1 25%;
  align-items: center;
  justify-content: center;
  margin: 0 .13333rem;
  color: #333;
  white-space: nowrap;
}

.home-subNav .nav-item-active {
  color: var(--netease-deep-red);
}

.home-subNav .nav-slider {
  position: absolute;
  bottom: 0;
  left: 12.5%;
  width: .4rem;
  height: .05333rem;
  background: var(--netease-deep-red);
  transform: translateX(-50%);
  transition: left .15s linear;
}

.home-subNav-wrap.is-fixed .home-subNav {
  position: fixed;
  z-index: 25;
  top: 0;
  left: 50%;
  width: min(100%, 10rem);
  background: var(--netease-red);
  transform: translateX(-50%);
}

.home-subNav-wrap.is-fixed .nav-item,
.home-subNav-wrap.is-fixed .nav-item-active {
  color: #fff;
}

.home-subNav-wrap.is-fixed .nav-slider {
  background: #fff;
}

.home-home {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.home-channelNav {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  max-height: 2rem;
  overflow: hidden;
  background: var(--soft);
  font-size: .42667rem;
  transition: max-height .2s linear;
}

.home-channelNav.is-unfold {
  max-height: 7rem;
}

.home-channelNav a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: .84rem;
  margin: .08rem;
  overflow: hidden;
  color: #333;
  text-align: center;
  white-space: nowrap;
}

.home-channelNav .s-small {
  font-size: .34667rem;
}

.home-channelNav .s-more {
  position: absolute;
  z-index: 5;
  right: 0;
  bottom: 0;
  display: flex;
  width: 1.62667rem;
  height: .92rem;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: linear-gradient(90deg, rgba(248, 248, 248, .82), #f8f8f8 28%);
}

.home-channelNav .s-more span {
  width: .32rem;
  height: .32rem;
  border-right: .05333rem solid #555;
  border-bottom: .05333rem solid #555;
  transform: translateY(-.08rem) rotate(45deg);
  transition: transform .2s ease;
}

.home-channelNav.is-unfold .s-more span {
  transform: translateY(.08rem) rotate(225deg);
}

.lottery-section {
  border-bottom: .16rem solid var(--soft);
  background: #fff;
}

.lottery-box {
  width: 100%;
  overflow: hidden;
  background: #fff;
}

.lottery-frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: #fff;
}

.home-topNews {
  margin: 0 .37333rem;
  padding: .06667rem 0;
  border-bottom: 1px solid var(--line);
}

.top-news {
  display: block;
  padding: .18667rem 0;
  border-bottom: 1px solid rgba(238, 238, 238, .7);
}

.top-news:last-child {
  border-bottom: 0;
}

.top-news h1,
.top-news h2 {
  display: -webkit-box;
  max-height: 1.33333rem;
  margin: 0;
  overflow: hidden;
  color: #333;
  font-size: .48rem;
  font-weight: 400;
  line-height: .66667rem;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.top-news:first-child h1 {
  color: #202020;
  font-size: .50667rem;
  font-weight: 500;
}

.top-news p,
.news-card p {
  display: flex;
  align-items: center;
  min-width: 0;
  margin: .12rem 0 0;
  color: var(--muted);
  font-size: .32rem;
}

.top-news p span,
.news-card p span {
  margin-right: .21333rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.world-cup {
  margin: .24rem .37333rem .10667rem;
  overflow: hidden;
  border-radius: .18667rem;
  background: linear-gradient(135deg, #131f48 0%, #293c7c 58%, #d62f3a 100%);
  color: #fff;
  box-shadow: 0 .12rem .32rem rgba(20, 35, 82, .18);
}

.world-cup__head {
  display: flex;
  min-height: .96rem;
  align-items: center;
  justify-content: space-between;
  padding: .16rem .28rem .12rem;
}

.world-cup__head div {
  display: flex;
  align-items: baseline;
  gap: .16rem;
}

.world-cup__head strong {
  font-size: .48rem;
  font-style: italic;
  letter-spacing: .02rem;
}

.world-cup__head span,
.world-cup__head a {
  color: rgba(255, 255, 255, .78);
  font-size: .28rem;
}

.world-cup__links {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid rgba(255, 255, 255, .12);
  border-bottom: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .08);
}

.world-cup__links a {
  padding: .16rem .04rem;
  border-right: 1px solid rgba(255, 255, 255, .12);
  color: rgba(255, 255, 255, .92);
  font-size: .29333rem;
  text-align: center;
}

.world-cup__links a:last-child {
  border-right: 0;
}

.world-cup__match {
  display: grid;
  grid-template-columns: .64rem 1fr 1.4rem 1fr .64rem;
  min-height: 1.12rem;
  align-items: center;
  gap: .12rem;
  padding: .18rem .28rem;
  background: rgba(255, 255, 255, .96);
  color: #222;
  text-align: center;
}

.world-cup__match strong {
  font-size: .34667rem;
  font-weight: 600;
}

.flag {
  display: grid;
  width: .6rem;
  height: .44rem;
  place-items: center;
  border-radius: .04rem;
  color: #fff;
  font-size: .2rem;
  font-weight: 700;
}

.flag-fr {
  background: linear-gradient(90deg, #1e3a8a 33%, #fff 33% 66%, #e11d48 66%);
  color: transparent;
}

.flag-es {
  background: linear-gradient(#c9182b 25%, #f7d117 25% 75%, #c9182b 75%);
  color: transparent;
}

.match-time {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}

.match-time b {
  color: #333;
  font-size: .29333rem;
}

.match-time small {
  color: var(--netease-deep-red);
  font-size: .32rem;
}

.channel-section {
  padding: 0 .37333rem;
  border-bottom: .16rem solid var(--soft);
}

.channel-heading {
  display: flex;
  height: 1.2rem;
  align-items: center;
  justify-content: space-between;
}

.channel-heading h2 {
  margin: 0;
  padding: 0;
  font-size: .53333rem;
  font-weight: 600;
}

.channel-heading nav {
  display: flex;
  align-items: center;
}

.channel-heading nav a {
  margin-left: .08rem;
  padding: .06667rem;
  color: #555;
  font-size: .34667rem;
}

.news-list {
  border-top: 1px solid var(--line);
}

.news-card {
  display: flex;
  min-height: 2.89333rem;
  align-items: center;
  border-bottom: 1px solid var(--line);
}

.news-card:last-child {
  border-bottom: 0;
}

.news-card__body {
  display: flex;
  min-width: 0;
  min-height: 2.22667rem;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: space-between;
}

.news-card h3 {
  display: -webkit-box;
  max-height: 1.33333rem;
  margin: 0;
  overflow: hidden;
  color: #333;
  font-size: .48rem;
  font-weight: 400;
  line-height: .66667rem;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.news-card img {
  flex: 0 0 auto;
  width: 2.90667rem;
  height: 2.22667rem;
  margin-left: .4rem;
  border-radius: .08rem;
  background: linear-gradient(135deg, #eee, #ddd);
  object-fit: cover;
}

.news-card img.is-broken {
  opacity: .25;
}

.news-card--feature {
  min-height: 3.2rem;
}

.news-card--feature img {
  height: 2.56rem;
}

.channel-footer {
  display: flex;
  height: 1.33333rem;
  align-items: center;
  justify-content: center;
  font-size: .42667rem;
}

.channel-footer a {
  display: flex;
  align-items: center;
  padding: .06667rem;
  color: var(--netease-deep-red);
}

.channel-footer span {
  margin-left: .12rem;
  font-size: .56rem;
  font-weight: 300;
  line-height: 1;
}

.service-section {
  padding-bottom: .37333rem;
}

.service-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .16rem;
}

.service-links a {
  display: flex;
  min-height: .96rem;
  align-items: center;
  justify-content: center;
  border: 1px solid #f0d2d2;
  border-radius: .12rem;
  background: linear-gradient(180deg, #fff, #fff8f8);
  color: #444;
  font-size: .34667rem;
}

.service-links a:active {
  background: #fff0f0;
}

.recommend-columns {
  padding: .37333rem;
  border-bottom: 1px solid var(--line);
}

.recommend-columns h2 {
  margin: 0 0 .28rem;
  font-size: .53333rem;
  font-weight: 600;
}

.recommend-columns nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .24rem .12rem;
}

.recommend-columns a {
  color: #555;
  font-size: .34667rem;
  text-align: center;
}

.site-footer {
  padding: .48rem .32rem .64rem;
  background: var(--soft);
  color: #999;
  text-align: center;
}

.site-footer p {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 .2rem;
  font-size: .32rem;
}

.site-footer p span {
  width: 1px;
  height: .28rem;
  margin: 0 .28rem;
  background: #ddd;
}

.site-footer small {
  font-size: .28rem;
}

.back-top {
  position: fixed;
  z-index: 40;
  right: max(.32rem, calc((100vw - 750px) / 2 + .32rem));
  bottom: calc(.48rem + env(safe-area-inset-bottom));
  display: grid;
  width: .96rem;
  height: .96rem;
  place-items: center;
  border: 1px solid rgba(0, 0, 0, .09);
  border-radius: 50%;
  background: rgba(255, 255, 255, .93);
  color: #666;
  box-shadow: 0 .08rem .24rem rgba(0, 0, 0, .12);
  opacity: 0;
  pointer-events: none;
  transform: translateY(.2rem);
  transition: opacity .2s ease, transform .2s ease;
}

.back-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.back-top span {
  font-size: .48rem;
  line-height: 1;
}

@media (max-width: 360px) {
  .s-logo {
    padding-left: .4rem;
    padding-right: .2rem;
  }

  .home-search {
    margin-right: .24rem;
  }

  .s-user {
    margin-right: .24rem;
  }

  .home-channelNav {
    font-size: .4rem;
  }

  .news-card img {
    margin-left: .28rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition-duration: .01ms !important;
  }
}
