Files
web_huangguo_web/app/static/css/themeIndex.css
T
fish03andClaude Opus 5.5 bef9f8b4ed Initial commit
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 14:43:16 +07:00

378 lines
7.9 KiB
CSS

.theme-index-page-body {
--site-footer-margin-top: min(24px, 1.25vw);
min-height: 100vh;
display: flex;
flex-direction: column;
color: #fff;
background: #0f0f0f;
}
.theme-index-page-body .site-header,
.theme-index-page-body .footer-box,
.theme-index-page-body .home-mobile-footer {
flex-shrink: 0;
}
.theme-index-page-body .download-fab {
display: none !important;
}
.theme-index-page {
width: 100%;
flex: 0 0 auto;
padding: min(36px, 1.875vw) 60px min(18px, 0.9375vw);
display: flex;
flex-direction: column;
align-items: stretch;
gap: min(24px, 1.25vw);
box-sizing: border-box;
background: #0f0f0f;
}
.theme-index-breadcrumb {
width: 100%;
min-width: 0;
display: flex;
align-items: center;
gap: min(8px, 0.416667vw);
overflow: hidden;
color: rgba(255, 255, 255, 0.55);
font: 400 clamp(14px, 0.9375vw, 18px)/1.333333 "PingFang SC", "Noto Sans SC", sans-serif;
white-space: nowrap;
}
.theme-index-breadcrumb a,
.theme-index-breadcrumb span {
color: inherit;
text-decoration: none;
}
.theme-index-breadcrumb a,
.theme-index-breadcrumb .is-current {
transition: color 180ms ease;
}
.theme-index-breadcrumb a:hover,
.theme-index-breadcrumb a:focus-visible,
.theme-index-breadcrumb .is-current {
color: #ec237f;
}
.theme-index-intro {
width: 100%;
display: flex;
flex-direction: column;
align-items: stretch;
gap: min(24px, 1.25vw);
}
.theme-index-intro h1,
.theme-index-intro p {
width: 100%;
margin: 0;
}
.theme-index-intro h1 {
color: #fff;
font: 600 clamp(18px, 1.25vw, 24px)/1.333333 "PingFang SC", "Noto Sans SC", sans-serif;
}
.theme-index-intro p {
color: rgba(255, 255, 255, 0.55);
font: 400 clamp(13px, 0.833333vw, 16px)/1.375 "PingFang SC", "Noto Sans SC", sans-serif;
}
.theme-index-section-title {
width: 100%;
margin: 0;
display: flex;
align-items: center;
gap: min(12px, 0.625vw);
color: #fff;
font: 600 clamp(18px, 1.25vw, 24px)/1.333333 "PingFang SC", "Noto Sans SC", sans-serif;
}
.theme-index-section-title > span {
width: min(8px, 0.416667vw);
height: min(22px, 1.145833vw);
flex: 0 0 auto;
background: #ec237f;
border-radius: min(6px, 0.3125vw);
}
.theme-index-grid {
width: 100%;
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: min(20px, 1.041667vw);
}
.theme-index-card {
position: relative;
width: 100%;
height: min(210px, 10.9375vw);
display: block;
overflow: hidden;
color: #fff;
background: rgba(255, 255, 255, 0.05);
border-radius: min(18px, 0.9375vw);
text-decoration: none;
isolation: isolate;
}
.theme-index-card > img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
object-fit: cover;
}
.theme-index-card-overlay {
position: absolute;
inset: 0;
z-index: 1;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.6) 100%);
}
.theme-index-card-copy {
position: absolute;
right: 0;
bottom: min(8px, 0.416667vw);
left: 0;
z-index: 2;
padding: min(12px, 0.625vw) min(24px, 1.25vw);
display: flex;
flex-direction: column;
align-items: flex-start;
gap: min(8px, 0.416667vw);
box-sizing: border-box;
}
.theme-index-card-count {
max-width: 100%;
padding: min(4px, 0.208333vw) min(8px, 0.416667vw);
overflow: hidden;
color: #EC237F;
background: rgba(0, 0, 0, 0.6);
border-radius: min(6px, 0.3125vw);
box-sizing: border-box;
font: 400 clamp(12px, 0.729167vw, 14px)/1.428571 "PingFang SC", "Noto Sans SC", sans-serif;
white-space: nowrap;
text-overflow: ellipsis;
}
.theme-index-card-name {
width: 100%;
overflow: hidden;
color: #fff;
font: 600 clamp(14px, 0.9375vw, 18px)/1.333333 "PingFang SC", "Noto Sans SC", sans-serif;
white-space: nowrap;
text-overflow: ellipsis;
}
.theme-index-empty {
grid-column: 1 / -1;
min-height: 240px;
display: flex;
align-items: center;
justify-content: center;
color: rgba(255, 255, 255, 0.55);
font: 400 16px/22px "PingFang SC", sans-serif;
}
.theme-index-page .pagination {
width: 100%;
margin: 0;
gap: min(12px, 0.625vw);
}
.theme-index-page .pagination-btn,
.theme-index-page .pagination-btn--wide {
width: min(48px, 2.5vw);
min-width: min(48px, 2.5vw);
height: min(48px, 2.5vw);
color: rgba(255, 255, 255, 0.55);
border-radius: 999px;
font-size: clamp(12px, 0.833333vw, 16px);
line-height: 1.375;
}
.theme-index-page .pagination-btn--active,
.theme-index-page .pagination-jump-submit {
color: #fff;
background: #ec237f;
}
.theme-index-page .pagination-arrow {
width: min(24px, 1.25vw);
height: min(24px, 1.25vw);
}
.theme-index-page .pagination-ellipsis,
.theme-index-page .pagination-jump-label,
.theme-index-page .pagination-jump-input,
.theme-index-page .pagination-jump-submit {
font-size: clamp(12px, 0.833333vw, 16px);
line-height: 1.375;
}
.theme-index-page .pagination-jump-input {
width: min(72px, 3.75vw);
height: min(48px, 2.5vw);
border-radius: 999px;
}
.theme-index-page .pagination-jump-submit {
width: min(96px, 5vw);
height: min(48px, 2.5vw);
border-radius: 999px;
}
.theme-index-page .pagination-jump-submit:hover,
.theme-index-page .pagination-jump-submit:focus-visible {
background: #f04493;
}
.theme-index-ads {
width: 100%;
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: min(36px, 1.875vw);
}
.theme-index-ad {
width: 100%;
aspect-ratio: 758 / 94;
display: block;
overflow: hidden;
border-radius: min(12px, 0.625vw);
}
.theme-index-ad img {
width: 100%;
height: 100%;
display: block;
object-fit: cover;
}
@media (min-width: 768px) and (max-width: 1023px) {
.theme-index-page {
padding: 24px 24px 18px;
gap: 24px;
}
.theme-index-intro {
gap: 18px;
}
.theme-index-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 18px;
}
.theme-index-card {
height: auto;
aspect-ratio: 373 / 210;
border-radius: 16px;
}
.theme-index-ad {
border-radius: 12px;
}
}
@media (max-width: 767px) {
body.site-shell.theme-index-page-body {
--site-footer-margin-top: 24px;
}
.theme-index-page {
padding: 12px var(--site-shell-gutter) 24px;
gap: 18px;
}
.theme-index-breadcrumb {
gap: 8px;
font-size: 12px;
line-height: 18px;
}
.theme-index-intro {
gap: 12px;
}
.theme-index-intro h1 {
font-size: 16px;
line-height: 22px;
}
.theme-index-intro p {
font-size: 12px;
line-height: 18px;
}
.theme-index-section-title {
gap: 6px;
font-size: 16px;
line-height: 22px;
}
.theme-index-section-title > span {
width: 4px;
height: 14px;
border-radius: 3px;
}
.theme-index-grid {
grid-template-columns: minmax(0, 1fr);
gap: 20px;
}
.theme-index-card {
height: auto;
aspect-ratio: 343 / 194;
border-radius: 18px;
}
.theme-index-card-copy {
bottom: 8px;
padding: 10px 12px;
gap: 6px;
}
.theme-index-card-count {
padding: 4px 8px;
border-radius: 6px;
font-size: 12px;
line-height: 18px;
}
.theme-index-card-name {
font-size: 16px;
line-height: 22px;
}
.theme-index-empty {
min-height: 320px;
font-size: 14px;
line-height: 20px;
}
.theme-index-page .pagination-jump {
display: none;
}
.theme-index-ads {
height: auto;
grid-template-columns: minmax(0, 1fr);
gap: 12px;
}
.theme-index-ad {
aspect-ratio: 343 / 47;
border-radius: 6px;
}
}