Files
2026-09-29 15:30:33 +07:00

1442 lines
24 KiB
CSS
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* 首页专属样式 */
/* Hero 轮播 */
.hero {
position: relative;
width: min(100%, var(--hero-width));
height: 760px;
margin: 0 auto;
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
gap: 24px;
padding: 24px 0 36px;
overflow: hidden;
background: var(--bg);
touch-action: pan-y;
cursor: grab;
user-select: none;
-webkit-user-select: none;
}
.hero.is-dragging {
cursor: grabbing;
}
.hero__bg {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0;
transition: opacity 0.65s ease;
will-change: opacity;
}
.hero__bg.is-active {
opacity: 0.85;
}
.hero__shade {
position: absolute;
inset: 0;
pointer-events: none;
}
.hero__shade--side {
background: linear-gradient(
90deg,
#0b0b0d 0%,
rgba(11, 11, 13, 0.72) 10%,
rgba(11, 11, 13, 0) 28%,
rgba(11, 11, 13, 0) 72%,
rgba(11, 11, 13, 0.72) 90%,
#0b0b0d 100%
);
}
.hero__shade--bottom {
background: linear-gradient(180deg, rgba(11, 11, 13, 0) 0%, rgba(11, 11, 13, 0) 50%, #0b0b0d 100%);
}
.hero__shade--top {
height: 200px;
inset: 0 auto auto 0;
width: 100%;
background: linear-gradient(180deg, #0b0b0d 0%, rgba(11, 11, 13, 0.6) 35%, rgba(11, 11, 13, 0) 100%);
}
.hero__viewport {
position: relative;
z-index: 1;
display: grid;
width: min(100%, var(--page-width));
}
.hero img {
-webkit-user-drag: none;
}
.hero__slide {
grid-area: 1 / 1;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
width: 100%;
opacity: 0;
visibility: hidden;
pointer-events: none;
transition: opacity 0.5s ease, visibility 0s linear 0.5s;
will-change: opacity;
}
.hero__slide.is-active {
opacity: 1;
visibility: visible;
pointer-events: auto;
transition-delay: 0s;
}
.hero__slide[hidden] {
display: none;
}
.hero__info {
width: min(560px, 100%);
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 18px;
}
.hero__meta {
display: flex;
align-items: center;
gap: 12px;
}
.hero__title {
margin: 0;
width: 100%;
color: var(--text);
font-size: 72px;
font-weight: 600;
line-height: 84px;
}
.hero__attrs {
margin: 0;
color: var(--text-muted);
font-size: 14px;
font-weight: 400;
line-height: 20px;
letter-spacing: 0.84px;
}
.hero__desc {
margin: 0;
width: min(520px, 100%);
color: var(--text-muted);
font-size: 16px;
font-weight: 400;
line-height: 26px;
}
@media (min-width: 769px) {
.hero__desc {
display: -webkit-box;
max-height: 78px;
overflow: hidden;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
line-clamp: 3;
overflow-wrap: anywhere;
}
}
.hero__actions {
display: flex;
align-items: center;
gap: 12px;
padding-top: 6px;
}
.hero__media {
position: relative;
width: 600px;
height: 338px;
flex-shrink: 0;
overflow: hidden;
border-radius: var(--radius-lg);
border: 1px solid var(--line);
background: var(--bg-panel);
}
.hero__poster {
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0;
transition: opacity 0.4s ease;
}
.hero__poster[data-hero-loaded="1"] {
opacity: 1;
}
.hero__play {
position: absolute;
left: 50%;
top: 50%;
display: inline-flex;
align-items: center;
justify-content: center;
width: 64px;
height: 64px;
margin: 0;
padding: 0;
transform: translate(-50%, -50%);
background: rgba(11, 11, 13, 0.72);
border: 1px solid rgba(255, 255, 255, 0.24);
border-radius: 999px;
cursor: pointer;
}
.hero__play .icon {
width: 27px;
height: 27px;
}
.hero__media .badge {
top: 10px;
right: 10px;
left: auto;
min-width: 0;
height: auto;
padding: 0 8px;
line-height: 14px;
}
.hero__thumbs {
position: relative;
z-index: 1;
display: flex;
align-items: center;
justify-content: space-between;
width: min(100%, var(--page-width));
padding-top: 20px;
border-top: 1px solid var(--line-soft);
}
.hero__thumb-list {
display: flex;
align-items: center;
gap: 10px;
}
.hero__thumb {
display: block;
width: 52px;
height: 70px;
padding: 0;
overflow: hidden;
border-radius: 6px;
border: 1px solid var(--line-soft);
opacity: 0.55;
background: transparent;
cursor: pointer;
transition: opacity 0.2s ease, border-color 0.2s ease;
}
.hero__thumb img {
width: 100%;
height: 100%;
object-fit: cover;
}
.hero__thumb.is-active {
opacity: 1;
border: 2px solid var(--accent);
}
.hero__pager {
display: flex;
align-items: center;
gap: 14px;
}
.hero__pager-label {
color: var(--text-dim);
font-size: 12px;
font-weight: 500;
line-height: 16px;
}
.hero__pager-track {
position: relative;
display: block;
width: 120px;
height: 3px;
overflow: hidden;
border-radius: 999px;
background: var(--line);
}
.hero__pager-fill {
position: absolute;
left: 0;
top: 0;
width: 20%;
height: 100%;
border-radius: 999px;
background: linear-gradient(90deg, #ff4a7b 0%, #ec237f 52%, #93226f 100%);
transition: width 0.3s ease;
}
.hero__pager-index {
color: var(--text-muted);
font-size: 14px;
font-weight: 500;
line-height: 20px;
letter-spacing: 0.56px;
}
/* Main */
.main {
display: flex;
flex-direction: column;
gap: 0;
}
/* Announce */
.announce {
display: flex;
align-items: center;
width: 100%;
height: 36px;
margin: 16px 0;
overflow: hidden;
background: #141417;
border: 1px solid rgba(217, 169, 74, 0.42);
border-radius: var(--radius-sm);
}
.announce__label {
display: inline-flex;
align-items: center;
justify-content: center;
align-self: stretch;
gap: 5px;
flex-shrink: 0;
padding: 0 12px;
background: linear-gradient(90deg, #e9c977 0%, #d9a94a 100%);
color: #141414;
font-size: 12px;
font-weight: 500;
line-height: 16px;
}
.announce__label .icon {
width: 14px;
height: 14px;
}
.announce__track {
flex: 1 1 0;
align-self: stretch;
min-width: 0;
padding: 0 14px;
overflow: hidden;
color: #e9c977;
font-size: 13px;
font-weight: 400;
line-height: 20px;
}
.announce__marquee {
display: flex;
width: max-content;
align-items: center;
height: 100%;
animation: announce-marquee 30s linear infinite;
}
.announce__track:hover .announce__marquee {
animation-play-state: paused;
}
.announce__marquee-group {
display: flex;
align-items: center;
gap: 18px;
padding-right: 18px;
flex-shrink: 0;
}
.announce__marquee-group p {
margin: 0;
white-space: nowrap;
}
.announce__sep {
width: 4px;
height: 4px;
border-radius: 999px;
background: #d9a94a;
opacity: 0.7;
flex-shrink: 0;
}
@keyframes announce-marquee {
from {
transform: translateX(0);
}
to {
transform: translateX(-50%);
}
}
@media (prefers-reduced-motion: reduce) {
.hero__slide,
.hero__bg,
.hero__poster,
.hero__thumb,
.hero__pager-fill {
transition: none;
}
.announce__marquee {
animation: none;
}
}
/* Category */
.category {
display: flex;
flex-wrap: wrap;
gap: 10px;
padding: 8px 0 16px;
}
.category__item {
display: inline-flex;
align-items: center;
justify-content: center;
height: 36px;
padding: 0 16px;
border-radius: 999px;
color: var(--text-muted);
font-size: 14px;
font-weight: 500;
background: rgba(255, 255, 255, 0.04);
border: 1px solid var(--line-soft);
}
.category__item.is-active,
.category__item:hover {
color: var(--text);
background: rgba(236, 35, 127, 0.16);
border-color: rgba(236, 35, 127, 0.45);
}
/* Rank */
.block--rank {
padding: 28px 0;
}
.block--rank .block__title {
font-size: 22px;
line-height: 30px;
}
.block--rank .block__more {
gap: 4px;
font-size: 14px;
line-height: 22px;
}
.grid--rank {
display: flex;
flex-wrap: wrap;
align-content: flex-start;
align-items: flex-start;
gap: 24px;
}
.grid--rank[hidden] {
display: none !important;
}
.rank-card {
display: flex;
align-items: flex-start;
width: 220px;
}
.rank-card__rank {
display: inline-flex;
flex-direction: column;
justify-content: flex-end;
align-items: flex-start;
align-self: stretch;
width: 76px;
padding-bottom: 52px;
}
.rank-card__no {
color: #7c7c86;
font-family: Inter, var(--font);
font-size: 56px;
font-weight: 700;
line-height: 56px;
}
.rank-card__no.is-top {
background: linear-gradient(180deg, #ff4a7b 0%, #ec237f 52%, #93226f 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
color: transparent;
}
.rank-card__body {
display: inline-flex;
flex-direction: column;
align-items: flex-start;
gap: 10px;
width: 144px;
min-width: 0;
}
.rank-card__cover {
position: relative;
display: block;
align-self: stretch;
width: 144px;
height: 192px;
overflow: hidden;
border-radius: var(--radius-md);
border: 1px solid var(--line-soft);
background:
linear-gradient(180deg, rgba(0, 0, 0, 0) 58%, rgba(0, 0, 0, 0.7) 100%),
var(--cover) center / cover no-repeat,
#1a1a1f;
}
.rank-card__cover .card__ep {
left: 10px;
bottom: 10px;
font-size: 12px;
line-height: 16px;
}
.rank-card__title {
margin: 0;
align-self: stretch;
color: var(--text);
font-size: 16px;
font-weight: 600;
line-height: 22px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.rank-card__title a {
color: inherit;
text-decoration: none;
}
.rank-card__meta {
margin: 0;
align-self: stretch;
color: var(--text-muted);
font-size: 13px;
font-weight: 400;
line-height: 20px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/* Topics */
.topic-grid {
display: flex;
align-items: flex-start;
gap: 24px;
}
.topic-card {
display: flex;
align-items: center;
justify-content: space-between;
width: 384px;
height: 200px;
padding-left: 24px;
overflow: hidden;
background: var(--bg-panel);
border: 1px solid var(--line-soft);
border-radius: var(--radius-lg);
}
.topic-card__info {
display: flex;
flex: 1 1 0;
flex-direction: column;
align-items: flex-start;
gap: 10px;
min-width: 0;
}
.topic-card__title {
margin: 0;
align-self: stretch;
color: var(--text);
font-size: 18px;
font-weight: 600;
line-height: 26px;
}
.topic-card__desc {
margin: 0;
align-self: stretch;
color: var(--text-muted);
font-size: 13px;
font-weight: 400;
line-height: 20px;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
line-clamp: 2;
overflow: hidden;
word-break: break-word;
}
.topic-card__count {
margin: 0;
color: var(--text-dim);
font-size: 12px;
font-weight: 400;
line-height: 18px;
}
.topic-card__stack {
position: relative;
width: 150px;
height: 200px;
flex-shrink: 0;
}
.topic-card__stack img {
position: absolute;
width: 72px;
height: 96px;
border-radius: var(--radius-sm);
border: 1px solid var(--line);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.45);
object-fit: cover;
}
.topic-card__stack img:nth-child(1) {
left: 4px;
top: 92px;
opacity: 0.65;
}
.topic-card__stack img:nth-child(2) {
left: 38px;
top: 72px;
opacity: 0.85;
}
.topic-card__stack img:nth-child(3) {
left: 72px;
top: 52px;
}
/* Series */
.grid--series {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
.series-card {
min-width: 0;
display: flex;
flex-direction: column;
gap: 10px;
}
.series-card__cover {
position: relative;
display: block;
overflow: hidden;
width: 100%;
aspect-ratio: 282 / 159;
box-sizing: border-box;
border-radius: var(--radius-md);
border: 0;
background:
linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.55) 100%),
var(--cover) center / cover no-repeat,
#1a1a1f;
}
.series-card__play {
position: absolute;
right: 10px;
bottom: 10px;
z-index: 2;
display: inline-flex;
align-items: center;
justify-content: center;
width: 44px;
height: 44px;
border-radius: 999px;
background: rgba(11, 11, 13, 0.72);
border: 1px solid rgba(255, 255, 255, 0.24);
pointer-events: none;
}
.series-card__play .icon {
width: 18px;
height: 18px;
margin-left: 2px;
}
/* Figma HGW/封面卡:横版封面悬浮态(对齐短剧 card__cover) */
.series-card__cover::before {
position: absolute;
inset: 0;
z-index: 3;
background: rgba(0, 0, 0, 0.6);
content: "";
opacity: 0;
pointer-events: none;
transition: opacity 180ms ease;
}
.series-card__cover::after {
position: absolute;
top: 50%;
left: 50%;
z-index: 4;
box-sizing: border-box;
width: 100px;
height: 76px;
padding-top: 54px;
background:
url("../images/play.svg") center 13px / 18px 18px no-repeat,
radial-gradient(
circle at 50% 22px,
rgba(11, 11, 13, 0.72) 0 21px,
rgba(255, 255, 255, 0.24) 21px 22px,
transparent 22px
);
color: #f2f2f4;
content: "立即播放";
font-size: 12px;
font-weight: 500;
line-height: 16px;
text-align: center;
opacity: 0;
pointer-events: none;
transform: translate(-50%, calc(-50% + 6px));
transition:
opacity 180ms ease,
transform 180ms ease;
}
.series-card__cover:focus-visible::before,
.series-card__cover:focus-visible::after {
opacity: 1;
}
.series-card__cover:focus-visible::after {
transform: translate(-50%, -50%);
}
@media (hover: hover) and (pointer: fine) {
.series-card__cover:hover::before,
.series-card__cover:hover::after {
opacity: 1;
}
.series-card__cover:hover::after {
transform: translate(-50%, -50%);
}
}
/* App CTA */
.app-cta {
display: flex;
align-self: stretch;
align-items: center;
justify-content: space-between;
gap: 24px;
margin: 16px 0 48px;
padding: 28px 32px;
border-radius: 20px;
background: linear-gradient(90deg, #2a0d22 0%, #150a17 60%, #141417 100%);
outline: 1px solid rgba(255, 255, 255, 0.07);
outline-offset: -1px;
}
.app-cta__copy {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
min-width: 0;
}
.app-cta__copy .block__title {
color: #f2f2f4;
font-size: 22px;
font-weight: 600;
line-height: 30px;
}
.app-cta__copy .block__subtitle {
color: #a1a1aa;
font-size: 14px;
font-weight: 400;
line-height: 22px;
}
.app-cta__hint {
margin: 0;
color: #7c7c86;
font-size: 12px;
font-weight: 400;
line-height: 18px;
}
.app-cta__download {
display: inline-flex;
flex: 0 0 auto;
align-items: center;
justify-content: center;
gap: 8px;
width: 220px;
height: 56px;
padding: 0 28px;
border-radius: 999px;
background: linear-gradient(135deg, #ff4a7b 0%, #ec237f 52%, #93226f 100%);
color: #fff;
font-size: 16px;
font-weight: 500;
line-height: 24px;
white-space: nowrap;
}
.app-cta__download-icon {
width: 22px;
height: 22px;
flex-shrink: 0;
object-fit: contain;
filter: brightness(0) invert(1);
}
.app-cta__download:focus-visible {
outline: 2px solid #fff;
outline-offset: 2px;
}
/* Homepage responsive */
@media (max-width: 1280px) {
.hero__title {
font-size: 56px;
line-height: 66px;
}
.hero__media {
width: 480px;
height: 270px;
}
}
@media (min-width: 769px) and (max-width: 900px) {
.hero {
height: auto;
min-height: 560px;
padding-top: calc(var(--site-header-height, 72px) + 24px);
}
.hero__slide {
flex-direction: column;
align-items: flex-start;
}
.hero__title {
font-size: 40px;
line-height: 48px;
}
.hero__media {
width: 100%;
height: auto;
aspect-ratio: 600 / 338;
}
.hero__actions {
flex-wrap: wrap;
}
.hero__thumbs {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}
.rank-card {
width: calc(50% - 12px);
}
.rank-card__rank {
width: 56px;
}
.rank-card__no {
font-size: 40px;
line-height: 40px;
}
.rank-card__body {
flex: 1 1 0;
width: auto;
min-width: 0;
}
.grid--series {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.topic-grid {
flex-wrap: wrap;
}
.topic-card {
width: 100%;
}
}
@media (max-width: 768px) {
.hero {
width: 100%;
height: 600px;
margin: 0;
padding: calc(var(--site-header-height, 72px) + 24px) 0 0;
align-items: stretch;
justify-content: flex-start;
gap: 0;
}
.hero__bg {
opacity: 0;
}
.hero__bg.is-active {
opacity: 1;
}
.hero__shade--side {
display: none;
}
.hero__shade--bottom {
background: linear-gradient(180deg, rgba(11, 11, 13, 0) 0%, rgba(11, 11, 13, 0) 30%, #0b0b0d 82%);
}
.hero__shade--top {
height: 120px;
background: linear-gradient(180deg, rgba(11, 11, 13, 0.6) 0%, rgba(11, 11, 13, 0) 100%);
}
.hero__viewport,
.hero__thumbs {
width: 100%;
}
.hero__viewport {
flex: 1 1 0;
display: grid;
align-items: stretch;
min-height: 0;
}
.hero__slide {
flex: 1;
flex-direction: column;
align-items: stretch;
justify-content: flex-end;
gap: 10px;
padding: 12px 16px 10px;
}
.hero__info {
width: 100%;
gap: 10px;
}
.hero__media {
display: none;
}
.hero__title {
font-size: 40px;
line-height: 48px;
}
.hero__attrs {
font-size: 13px;
line-height: 18px;
letter-spacing: 0.78px;
}
.hero__desc {
width: 100%;
font-size: 13px;
line-height: 20px;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.hero__actions {
width: 100%;
gap: 10px;
padding-top: 4px;
}
.hero__actions .btn--primary {
flex: 1 1 0;
}
.hero__trailer {
width: 48px;
height: 48px;
padding: 0;
}
.hero__thumbs {
padding: 12px 16px 14px;
border-top: 1px solid var(--line-soft);
margin-top: 0;
}
.hero__thumb-list {
gap: 6px;
}
.hero__thumb {
width: 36px;
height: 48px;
}
.hero__pager {
gap: 8px;
}
.hero__pager-label {
display: none;
}
.hero__pager-track {
width: 60px;
}
.hero__pager-index {
font-size: 12px;
line-height: 16px;
letter-spacing: 0.72px;
}
.hero__actions .btn--primary .icon {
width: 20px;
height: 20px;
}
.main {
padding-bottom: 8px;
}
.announce {
width: auto;
height: 32px;
margin: 10px var(--h5-gutter) 0;
}
.announce__label {
padding: 0 10px;
font-size: 11px;
line-height: 14px;
}
.announce__label .icon {
width: 13px;
height: 13px;
}
.announce__track {
padding: 0 12px;
font-size: 12px;
line-height: 18px;
}
.announce__marquee {
animation-duration: 22s;
}
.category {
flex-wrap: nowrap;
gap: 8px;
padding: 12px var(--h5-gutter) 4px;
margin: 0;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
.category::-webkit-scrollbar {
display: none;
}
.category__item {
flex-shrink: 0;
height: 32px;
padding: 0 14px;
font-size: 13px;
font-weight: 400;
line-height: 20px;
background: transparent;
border-color: var(--line);
}
.category__item.is-active,
.category__item:hover {
color: var(--accent-hot);
background: rgba(236, 35, 127, 0.1);
border-color: rgba(236, 35, 127, 0.3);
}
.block--continue .card:nth-child(n + 4),
.block--preview .card:nth-child(n + 4),
.block--featured .card:nth-child(n + 5) {
display: none;
}
.block--continue .block__subtitle {
display: none;
}
.block--featured .grid--6,
.block--series .grid--series {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 14px 9px;
}
.block--featured .card__cover {
aspect-ratio: 167 / 223;
border-radius: var(--radius-md);
}
.block--featured .card__title {
font-size: 15px;
line-height: 21px;
}
.block--featured .card__meta {
font-size: 12px;
line-height: 18px;
}
.block--featured .card {
gap: 8px;
}
.block--rank {
padding: 16px var(--h5-gutter) 8px;
gap: 14px;
}
.block--rank .block__head {
margin-bottom: 14px;
padding: 0;
}
.block--rank .block__title {
font-size: 18px;
line-height: 26px;
}
.block--rank .block__more {
gap: 2px;
font-size: 13px;
line-height: 20px;
}
.block--rank .block__more .icon--sm {
width: 14px;
height: 14px;
}
.grid--rank {
flex-wrap: nowrap;
gap: 10px;
margin: 0 calc(-1 * var(--h5-gutter));
padding: 0 var(--h5-gutter);
overflow-x: auto;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
.grid--rank::-webkit-scrollbar {
display: none;
}
.rank-card {
position: relative;
flex: 0 0 120px;
width: 120px;
display: block;
}
.rank-card__rank {
position: absolute;
left: 8px;
top: 4px;
z-index: 2;
width: auto;
padding: 0;
pointer-events: none;
}
.rank-card__no {
font-size: 40px;
line-height: 40px;
}
.rank-card__no:not(.is-top) {
color: #f2f2f4;
}
.rank-card__body {
width: 100%;
gap: 6px;
}
.rank-card__cover {
width: 100%;
height: auto;
aspect-ratio: 120 / 160;
border-radius: var(--radius-sm);
}
.rank-card__cover .card__ep {
left: 10px;
bottom: 10px;
font-size: 11px;
line-height: 14px;
}
.rank-card__title {
font-size: 14px;
line-height: 20px;
}
.rank-card__meta {
font-size: 11px;
line-height: 16px;
}
.topic-grid {
flex-wrap: nowrap;
gap: 10px;
margin: 0 calc(-1 * var(--h5-gutter));
padding: 0 var(--h5-gutter);
overflow-x: auto;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
.topic-grid::-webkit-scrollbar {
display: none;
}
.topic-card {
flex: 0 0 280px;
width: 280px;
height: 140px;
padding-left: 16px;
border-radius: 12px;
}
.topic-card__info {
gap: 6px;
}
.topic-card__title {
font-size: 15px;
line-height: 21px;
}
.topic-card__desc {
font-size: 12px;
line-height: 18px;
}
.topic-card__count {
font-size: 11px;
line-height: 16px;
}
.topic-card__stack {
width: 112px;
height: 140px;
}
.topic-card__stack img {
width: 56px;
height: 75px;
border-radius: 6px;
box-shadow: 0 6px 14px rgba(0, 0, 0, 0.45);
}
.topic-card__stack img:nth-child(1) {
left: 4px;
top: 56px;
}
.topic-card__stack img:nth-child(2) {
left: 30px;
top: 42px;
}
.topic-card__stack img:nth-child(3) {
left: 56px;
top: 28px;
}
.grid--series {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 14px 9px;
}
.series-card {
gap: 8px;
}
.series-card__cover {
aspect-ratio: 167 / 94;
}
.series-card__play {
width: 36px;
height: 36px;
right: 10px;
bottom: 10px;
}
.series-card__play .icon {
width: 15px;
height: 15px;
}
.app-cta {
flex-direction: column;
align-items: stretch;
gap: 16px;
margin: 8px var(--h5-gutter) 24px;
padding: 20px;
border-radius: 16px;
}
.app-cta__copy .block__title {
font-size: 18px;
line-height: 26px;
}
.app-cta__download {
width: 100%;
}
}
/* 公告跑马灯:官方访问地址以金色描边胶囊展示 */
.announce__addrs {
display: inline-flex;
align-items: center;
gap: 8px;
}
.announce__addrs > span {
color: var(--gold);
}
.announce__addr {
display: inline-flex;
align-items: center;
height: 22px;
padding: 0 10px;
border: 1px solid rgba(233, 201, 119, 0.45);
border-radius: 999px;
color: var(--text);
font-size: 12px;
line-height: 20px;
text-decoration: none;
background: rgba(233, 201, 119, 0.08);
}
.announce__addr:hover {
border-color: var(--gold);
background: rgba(233, 201, 119, 0.16);
}
@media (max-width: 768px) {
.announce__addr {
height: 20px;
padding: 0 8px;
font-size: 11px;
line-height: 18px;
}
}
/* Banner 可读性(桌面端):背景海报保持原样,只在左侧文字区域加一道渐变 */
@media (min-width: 769px) {
.hero__shade--side {
background:
linear-gradient(90deg, #0b0b0d 0%, rgba(11, 11, 13, 0.78) 16%, rgba(11, 11, 13, 0.45) 36%, rgba(11, 11, 13, 0) 52%),
linear-gradient(270deg, #0b0b0d 0%, rgba(11, 11, 13, 0.72) 8%, rgba(11, 11, 13, 0) 24%);
}
.hero__title,
.hero__desc {
text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6);
}
}
.hero__attrs {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 6px 12px;
}
@media (max-width: 768px) {
/* 手机端背景即主画面,不模糊;拉高底部渐变保证文字可读 */
.hero__shade--bottom {
background: linear-gradient(180deg, rgba(11, 11, 13, 0) 0%, rgba(11, 11, 13, 0.25) 28%, rgba(11, 11, 13, 0.82) 56%, #0b0b0d 78%);
}
.hero__desc {
-webkit-line-clamp: 2;
}
.hero__attrs {
gap: 4px 10px;
}
}