@charset "utf-8";

:root {
    color-scheme: light dark;
    --page-overlay: linear-gradient(
        180deg,
        rgba(255, 248, 241, 0.1),
        rgba(245, 236, 228, 0.24)
    );
    --page-background-color: #f3ece5;
    --glass-tint: rgba(255, 255, 255, 0.25);
    --glass-border: rgba(255, 255, 255, 0.18);
    --glass-shadow: 0 6px 6px rgba(0, 0, 0, 0.2),
        0 0 20px rgba(0, 0, 0, 0.1);
    --glass-shine: inset 2px 2px 1px 0 rgba(255, 255, 255, 0.5),
        inset -1px -1px 1px 1px rgba(255, 255, 255, 0.5);
    --glass-menu-hover: rgba(255, 255, 255, 0.5);
    --glass-menu-hover-shadow: inset -2px -2px 2px rgba(0, 0, 0, 0.1);
    --glass-radius: 1.35rem;
    --glass-radius-large: 1.8rem;
    --glass-radius-control: 0.85rem;
    --glass-radius-pill: 999px;
    --glass-control-tint: rgba(255, 255, 255, 0.18);
    --glass-backdrop: blur(3px) saturate(1.1);
    --glass-hover-backdrop: blur(2px) saturate(1.1);
    --page-scrim: rgba(255, 255, 255, 0.08);
    --loading-overlay: rgba(255, 255, 255, 0.30);
    --site-text: #1b2f4d;
    --site-text-muted: rgba(27, 47, 77, 0.72);
    --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
    --ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
    --motion-fast: 140ms;
    --motion-standard: 220ms;
    --motion-modal: 360ms;
}

:root[data-theme="light"] {
    color-scheme: light;
    --page-overlay: linear-gradient(
        180deg,
        rgba(255, 248, 241, 0.1),
        rgba(245, 236, 228, 0.24)
    );
    --page-background-color: #f3ece5;
    --glass-tint: rgba(255, 255, 255, 0.25);
    --glass-border: rgba(255, 255, 255, 0.18);
    --glass-shadow: 0 6px 6px rgba(0, 0, 0, 0.2),
        0 0 20px rgba(0, 0, 0, 0.1);
    --glass-shine: inset 2px 2px 1px 0 rgba(255, 255, 255, 0.5),
        inset -1px -1px 1px 1px rgba(255, 255, 255, 0.5);
    --glass-menu-hover: rgba(255, 255, 255, 0.5);
    --glass-menu-hover-shadow: inset -2px -2px 2px rgba(0, 0, 0, 0.1);
    --glass-control-tint: rgba(255, 255, 255, 0.18);
    --page-scrim: rgba(255, 255, 255, 0.08);
    --loading-overlay: rgba(255, 255, 255, 0.30);
    --site-text: #1b2f4d;
    --site-text-muted: rgba(27, 47, 77, 0.72);
}

:root[data-theme="dark"] {
    color-scheme: dark;
    --page-overlay: linear-gradient(
        180deg,
        rgba(4, 7, 12, 0.4),
        rgba(4, 7, 12, 0.78)
    );
    --page-background-color: #05070b;
    --glass-tint: rgba(17, 22, 32, 0.48);
    --glass-border: rgba(255, 255, 255, 0.12);
    --glass-shadow: 0 18px 36px rgba(0, 0, 0, 0.5),
        0 0 0 1px rgba(255, 255, 255, 0.08);
    --glass-shine: inset 1px 1px 1px 0 rgba(255, 255, 255, 0.18),
        inset -1px -1px 1px 1px rgba(255, 255, 255, 0.06);
    --glass-menu-hover: rgba(255, 255, 255, 0.1);
    --glass-menu-hover-shadow: inset -2px -2px 2px rgba(255, 255, 255, 0.04);
    --glass-control-tint: rgba(255, 255, 255, 0.08);
    --page-scrim: rgba(0, 0, 0, 0.34);
    --loading-overlay: rgba(5, 7, 11, 0.64);
    --site-text: #f4f6fb;
    --site-text-muted: rgba(244, 246, 251, 0.72);
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme]) {
        --page-overlay: linear-gradient(
            180deg,
            rgba(4, 7, 12, 0.4),
            rgba(4, 7, 12, 0.78)
        );
        --page-background-color: #05070b;
        --glass-tint: rgba(17, 22, 32, 0.48);
        --glass-border: rgba(255, 255, 255, 0.12);
        --glass-shadow: 0 18px 36px rgba(0, 0, 0, 0.5),
            0 0 0 1px rgba(255, 255, 255, 0.08);
        --glass-shine: inset 1px 1px 1px 0 rgba(255, 255, 255, 0.18),
            inset -1px -1px 1px 1px rgba(255, 255, 255, 0.06);
        --glass-menu-hover: rgba(255, 255, 255, 0.1);
        --glass-menu-hover-shadow: inset -2px -2px 2px rgba(255, 255, 255, 0.04);
        --glass-control-tint: rgba(255, 255, 255, 0.08);
        --page-scrim: rgba(0, 0, 0, 0.34);
        --loading-overlay: rgba(5, 7, 11, 0.64);
        --site-text: #f4f6fb;
        --site-text-muted: rgba(244, 246, 251, 0.72);
    }
}

/*全局样式*/
html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    color: var(--site-text);
    background-color: var(--page-background-color);
	overflow: hidden;
}

*,
a,
p {
    text-decoration: none;
    transition: color var(--motion-fast) var(--ease-out);
    color: var(--site-text);
    user-select: none;
    font-family: 'MiSans', sans-serif;
}

a:hover {
    color: var(--site-text);
}

.cards {
    transition: transform var(--motion-standard) var(--ease-out),
        box-shadow var(--motion-standard) var(--ease-out);
    will-change: transform;
}

.cards:active {
    transform: scale(0.98);
    transition-duration: var(--motion-fast);
}

@media (hover: hover) and (pointer: fine) {
    .cards:hover {
        transform: scale(1.008);
    }
}

.noscript {
    z-index: 999999;
    font-size: 0.95rem;
    text-align: center;
    margin: 14px 0px;
}

/*背景*/
.bg-all {
    z-index: 0;
    position: fixed;
    top: calc(0px + 0px);
    left: 0;
    width: 100%;
    height: calc(100% - 0px);
    background: var(--page-background-color) url('/img/MHFJ/1.jpg') center / cover no-repeat;
}

#bg {
    transform: scale(1.10);
    filter: blur(10px);
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 1s, transform .25s, filter .25s;
    backface-visibility: hidden;
}

img.error {
    display: none;
}

.cover {
    opacity: 0;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: var(--page-overlay);
    transition: opacity var(--motion-standard) var(--ease-out);
}

/*页面样式*/
section {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
    position: relative !important;
    height: 100vh !important;
    height: 100dvh !important;
    transform: none !important;
    opacity: 0;
    filter: none !important;
    transition: ease 1.5s;
}

main {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    min-height: 0;
    flex: 1 1 auto;
	padding-top: 1.0rem;
    overflow: auto;
    background: transparent;
    display: flex;
    /*align-items: center;*/
}

.container {
    width: 100%;
    display: flex;
    justify-content: space-around;
	flex-direction: row;
}

.row {
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    --bs-gutter-x: 0 !important;
}

.col.\32 {
    margin: 0 0.7rem;
}

.main-left {
    /*transform: translateY(240px);*/
    transform: translateY(0px);
}

.row.rightone {
    display: flex;
    align-items: stretch;
}

/*头像*/
.main-img {
    display: flex;
    align-items: center;
    gap: 12px;
}

.main-img img {
    border-radius: 50%;
    width: 120px;
    flex: 0 0 auto;
}

.main-img img {
    transition: transform var(--motion-standard) var(--ease-out);
}

@media (hover: hover) and (pointer: fine) {
    .main-img img:hover {
        transform: rotate(8deg) scale(1.02);
    }
}

div.img-sub-title {
    width: auto;
    margin-left: 0;
    transform: none;
    display: block;
    line-height: 1;
}

span.img-sub-title {
    display: block;
    font-size: 5rem;
    line-height: 1;
    font-family: 'Pacifico-Regular' !important;
}

span.img-sub-text {
    display: block;
    font-size: 2rem;
    line-height: 1;
    font-family: 'Pacifico-Regular' !important;
}

div.img-title {
    width: auto;
    margin-left: 0;
    transform: none;
    display: block;
    line-height: 1;
}

span.img-title {
    display: block;
    font-size: 5rem;
    line-height: 1;
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-0.165em);
}

span.img-text {
    display: block;
    font-size: 2rem;
    line-height: 1;
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-0.33em);
}

.main-img > .img-title {
    position: relative;
    display: inline-block;
    overflow: visible;
    transform: translateY(-0.72em);
}

.main-img > .img-title span.img-text {
    position: absolute;
    left: calc(100% + 0.12em);
    bottom: 0.18em;
    white-space: nowrap;
}

/*简介*/
.message {
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    padding: 1rem;
    border-radius: 6px;
    margin-top: 3.5rem;
    max-width: 460px; /* 最大宽度 */
    min-width: 320px; /* 最小宽度 */
    width: auto; /* 自适应宽度 */
    box-sizing: border-box; /* 包括内边距和边框 */
    cursor: pointer;
    transition: none; /* 移除动画效果 */
}

.des {
    display: flex;
    justify-content: space-between;
}

.des-title {
    margin: 1rem 1rem;
    line-height: 1.6rem;
    /*font-size: 1.10rem;*/
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
}

span#change {
    font-family: 'Pacifico-Regular' !important;
}

i.iconfont.icon-yinhao-copy {
    align-self: flex-end;
}

/*社交链接*/
.social {
    margin-top: 1rem;
    display: flex;
    align-items: center;
    max-width: 460px;
}

.link i {
    font-size: 1.75rem;
    margin: 0px 10px;
}

button.link {
  all: unset;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  background: transparent;
  border: none;
  padding: 0;
}

button.link i {
  font-size: 1.75rem;
  color: inherit;
}

/*
.social .link i:hover {
    font-size: 2.5rem;
}
*/
#link-text {
    display: none;
    flex: 1;
    text-align: right;
    margin-right: 1rem;
}

/*一言*/
.col.hitokotos {
    margin-right: 0.75rem;
}

.hitokoto {
    width: 100%;
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    padding: 20px;
    border-radius: 6px;
    min-height: 165px;
    height: 165px;
    max-height: 165px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    overflow: hidden;
}

.hitokoto-all {
    margin-top: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 0;
}

.hitokoto-text {
    font-size: 1.10rem;
}

#hitokoto_text {
    word-break: break-all;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.hitokoto-from {
    margin-top: 10px;
    font-weight: bold;
    align-self: flex-end;
    font-size: 1.10rem;
	-webkit-line-clamp: 1;
}

.open-music {
    display: none;
    justify-content: center;
    background: var(--glass-control-tint);
    padding: 4px 0px;
    font-size: 0.95rem;
    animation: fade;
    -webkit-animation: fade 0.5s;
    -moz-animation: fade 0.5s;
    -o-animation: fade 0.5s;
    -ms-animation: fade 0.5s;
}

.open-music:hover {
    background: var(--glass-menu-hover);
}

/*音乐播放器卡片*/
#music {
    display: none;
}

.music {
    width: 100%;
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    padding: 20px;
    border-radius: 6px;
    min-height: 165px;
    height: 165px;
    max-height: 165px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    overflow: hidden;
    animation: fade;
    -webkit-animation: fade 0.3s;
    -moz-animation: fade 0.3s;
    -o-animation: fade 0.3s;
    -ms-animation: fade 0.3s;
}

.music-all {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 100%;
    min-height: 0;
}

.music-button {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: center;
    gap: 6px;
    width: 100%;
    min-width: 0;
    margin-bottom: 0;
}

.music-control {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-evenly;
    width: 100%;
}

.music-menu {
    min-height: 26px;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
}

i.iconfont.icon-play,
i.iconfont.icon-pause {
    font-size: 2.25rem;
    padding: 6px;
    border-radius: 6px;
}

i.iconfont.icon-play:hover,
i.iconfont.icon-pause:hover {
    background: var(--glass-menu-hover);
    padding: 6px;
    border-radius: 6px;
}

i#last,
i#next {
    font-size: 2.0rem;
}

.music-text {
    margin-top: 6px;
    font-size: 1.10rem;
    max-width: 220px;
    overflow: hidden;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.25;
    text-align: center;
    animation: fade;
    -webkit-animation: fade 0.5s;
    -moz-animation: fade 0.5s;
    -o-animation: fade 0.5s;
    -ms-animation: fade 0.5s;
}

#music-open,
#openmore,
#music-close {
    background: var(--glass-control-tint);
    padding: 4px 8px;
    border-radius: 6px;
    margin: 0;
    white-space: normal;
    overflow: visible;
    overflow-wrap: anywhere;
    text-align: center;
    line-height: 1.25;
    min-height: 28px;
    height: auto;
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
}

.music-button > #openmore,
.music-button > #music-close {
    flex: 0 1 var(--music-button-width, auto);
    width: var(--music-button-width, fit-content);
    max-width: calc((100% - 6px) / 2);
    min-width: 0;
    box-sizing: border-box;
}

#music-open:hover,
#music-close:hover {
    background: var(--glass-menu-hover);
}

.music-volume {
    margin-top: 6px;
    display: flex;
    align-items: center;
    flex-direction: row;
    animation: fade;
    -webkit-animation: fade 0.5s;
    -moz-animation: fade 0.5s;
    -o-animation: fade 0.5s;
    -ms-animation: fade 0.5s;
}

#volume-ico {
    padding-top: 1px;
    margin-right: 6px;
}

.music-volume i {
    font-size: 1.75rem;
}

input[type=range] {
    -webkit-appearance: none;
    width: 100%;
    border-radius: 10px;
    height: 8px;
    background: var(--glass-control-tint);
}

input[type=range]::-webkit-slider-thumb,
input[type=range]::-moz-range-thumb {
    -webkit-appearance: none;
}

input[type=range]::-webkit-slider-runnable-track,
input[type=range]::-moz-range-track {
    height: 15px;
    border-radius: 10px;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 15px;
    width: 15px;
    background: var(--site-text);
    border-radius: 50%;
}

/*时间卡片*/
.col.times {
    margin-left: 0.75rem;
}

.time {
    --time-card-gap: 0.58rem;
    width: 100%;
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    padding: 20px;
    border-radius: 6px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--time-card-gap);
    min-height: 165px;
    height: 165px;
    max-height: 165px;
    font-size: 1.10rem;
    overflow: hidden;
}

.timeshow {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--time-card-gap);
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.weather {
    width: 100%;
    margin-top: 0;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.weather-content {
    display: none;
}

.weather.weather-ready .weather-content {
    display: inline;
}

.weather.weather-ready .weather-error {
    display: none;
}

.time-date {
    display: block;
    max-width: 100%;
}

span.time-text {
    display: inline-block;
    max-width: 100%;
    font-size: clamp(2.2rem, 4.4vw, 3.25rem);
    line-height: 1;
    letter-spacing: 2px;
    font-family: 'UnidreamLED' !important;
}

/*分割线*/
.line {
    margin: 1rem 0.25rem;
    margin-top: 2rem;
    font-size: 1.10rem;
    display: flex;
    align-items: center;
}

span.line-text {
    font-size: 1.2rem;
    margin: 0px 6px;
}

i.iconfont.icon-link {
    font-size: 1.2rem;
}

/*链接卡片*/
.link-card {
    height: 100px;
    width: 100%;
    border-radius: 6px;
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: center;
    transition: background-color var(--motion-fast) ease;
}

.link-card i {
    margin-left: 0px;
    font-size: 2.2rem;
}

span.link-name {
    font-size: 1.1rem;
}

@media (hover: hover) and (pointer: fine) {
    .link-card:hover {
        background: var(--glass-menu-hover);
    }
}

i.iconfont.icon-a-daohangzhiyindingwei-05,
i.iconfont.icon-z_shangpinheji {
    font-size: 2rem;
}

/*更多页面*/
.more {
    display: none !important;
    position: fixed;
    top: 7%;
    height: 82vh;
    padding: 30px;
    box-sizing: border-box;
    overflow-y: auto;
    z-index: 999;
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    border-radius: 6px;
}

.mores .more {
    display: flex !important;
    justify-content: flex-start;
    flex-direction: column;
    align-items: stretch;
    animation: fade;
    -webkit-animation: fade 0.3s;
    -moz-animation: fade 0.3s;
    -o-animation: fade 0.3s;
    -ms-animation: fade 0.3s;
}

.mores .col.right {
    opacity: 0;
    pointer-events: none;
}

/*关闭按钮*/
.close {
    display: none;
    left: auto;
    top: 4px;
    right: 8px;
    font-size: 1.45rem;
}

.close:hover {
    transform: scale(1.2);
}

/*时间胶囊*/
.progress {
    --progress-value: 0%;
    position: relative;
    width: 100%;
    height: 20px;
    align-items: center;
    background: transparent !important;
    backdrop-filter: blur(5px);
}

.progress-bar {
    font-family: 'UnidreamLED' !important;
    background-color: var(--site-text) !important;
    color: var(--page-background-color) !important;
    font-size: 0.95rem;
    height: 20px;
}

.date {
    width: 100%;
}

.date-text {
    margin: 1rem 0rem 0.5rem 0rem;
}

/*其他链接*/

.mores .link-card {
    height: 48px !important;
}

/*更多页面*/
.box-left {
    flex: 0 44%;
    min-width: 400px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.box {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1996;
    background-color: var(--page-scrim);
    backdrop-filter: blur(20px);
    animation: fade 0.3s;
}

.box-wrapper {
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 1997;
    width: 80%;
    height: 80vh;
    background: var(--glass-tint);
    border-radius: 6px;
    animation: fade 0.3s;
    padding: 32px 40px 40px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    overflow: auto;
}

.box-left > .img-sub-title {
    display: block;
    width: 100%;
    margin-top: -14px;
    margin-left: 14px;
    line-height: 1;
}

.box-left > .img-sub-title span.img-sub-title {
    display: inline-block;
    line-height: 1;
}

.box-left > .img-sub-title span.img-sub-title + span.img-sub-text {
    display: inline-block;
    line-height: 1;
    margin-left: 0.12em;
    transform: translateY(0.02em);
    white-space: nowrap;
}

.box-left > .img-sub-title br + span.img-sub-text {
    display: block;
    line-height: 1;
    margin-top: 0.78em;
    margin-left: 0;
}

#accordion {
    min-width: 360px;
    margin-right: 40px;
    margin-top: 20px;
    margin-left: 14px;
    border-radius: 8px;
    box-shadow: 0 2px 2px 0 rgb(0 0 0 / 7%), 0 1px 5px 0 rgb(0 0 0 / 10%);
}

.accordion-item {
    background-color: transparent !important;
    border: none !important;
}

.accordion-item:first-of-type .accordion-button {
    border-radius: 8px;
}

.accordion-button {
    color: var(--site-text) !important;
    background-color: transparent;
    transition: background-color var(--motion-fast) ease,
        border-color var(--motion-fast) ease,
        color var(--motion-fast) ease;

}

.accordion-button:focus {
    border-color: var(--glass-border) !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 8px;
}

.accordion-button:not(.collapsed) {
    background-color: var(--glass-control-tint);
    border-bottom-left-radius: 0px !important;
    border-bottom-right-radius: 0px !important;
    font-weight: bold;
}

.accordion-button::after {
    border-radius: 8px;
    background-image: none !important;
}

.accordion-body {
    padding: 1rem 0rem !important;
    background-color: var(--glass-control-tint);
}

.closebox {
    left: auto;
    top: 10px;
    right: 16px;
}

.closebox:hover {
    transform: scale(1.2);
}

i.iconfont.icon-close,
i.iconfont.icon-github1 {
    font-size: 1.45rem;
}

/*个性设置*/
.set {
    display: flex;
    flex-direction: column;
    padding: 0rem 1.5rem;
}

.btn-group,
.btn-group-vertical {
    margin-top: 10px;
}

.btn-outline-primary {
    color: var(--site-text) !important;
    border-color: var(--glass-border) !important;
}

.btn-outline-primary:hover {
    background-color: var(--glass-menu-hover) !important;
    border-color: var(--glass-border) !important;
}

.btn-check:focus+.btn, .btn:focus {
    box-shadow: none !important;
}

.btn-check:active+.btn-outline-primary,
.btn-check:checked+.btn-outline-primary,
.btn-outline-primary.active,
.btn-outline-primary.dropdown-toggle.show,
.btn-outline-primary:active {
    background-color: var(--glass-menu-hover) !important;
    border-color: var(--glass-border) !important;
}

#wallpaper {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.form-radio {
    flex: 1 1 0%;
    width: 31.3%;
    min-width: 31.3%;
    max-width: 31.3%;
    text-align: center;
    margin: 1%;
}

input[type="radio"]+label {
    padding: 6px 10px;
    background: var(--glass-control-tint);
    border-radius: 8px;
    transition: background-color var(--motion-fast) ease,
        border-color var(--motion-fast) ease,
        color var(--motion-fast) ease,
        transform var(--motion-fast) var(--ease-out);
    border: 2px solid transparent;
    width: 100%;
}

input[type="radio"]:checked+label {
    background: var(--glass-menu-hover);
    border: 2px solid var(--glass-border);
}

/*更新日志*/
.upnote {
    display: flex;
    flex-direction: column;
    padding: 0rem 1.5rem;
    height: 156px;
    overflow-y: auto;
}

.uptext{
    display: inline-flex;
    align-items: flex-start;
    line-height: 32px;
    gap: 4px;
}

.uptext svg{
    flex: 0 0 auto;
    margin-top: 6px;
}

.uptext .uptext-inner-wrap{
    all:unset;
}

/*Aplayer*/
.box-right {
    flex: 0 54%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end;
    min-height: 460px;
    overflow-y: auto;
}

.aplayer {
    background: transparent !important;
    width: 100%;
    border-radius: 6px !important;
    margin-right: 18px;
	overflow-y: auto;
    min-height: 336px
}

.aplayer.aplayer-withlrc .aplayer-pic {
    display: none;
}

.aplayer.aplayer-withlrc .aplayer-info {
    margin-left: 0px !important;
}

.aplayer.aplayer-withlrc .aplayer-info {
    background-color: var(--glass-control-tint);
    border-radius: 6px;
}

/*歌曲名称*/
.aplayer .aplayer-info .aplayer-music .aplayer-title {
    font-size: 16px !important;
}

/*音乐列表*/
.aplayer.aplayer-withlist .aplayer-list {
    margin-top: 6px;
}

.aplayer .aplayer-list ol li.aplayer-list-light {
    background: var(--glass-control-tint) !important;
    border-radius: 6px !important;
}

.aplayer .aplayer-list ol li:hover {
    background: var(--glass-menu-hover) !important;
    border-radius: 6px !important;
}

.aplayer .aplayer-list ol li {
    border-top: 1px solid transparent !important;
}

.aplayer.aplayer-withlist .aplayer-info {
    border-bottom: 1px solid transparent !important;
}

.aplayer-list-cur {
    background-color: var(--site-text) !important;
}

/*控制面板 - Bug*/
.aplayer .aplayer-info .aplayer-controller {
    display: none !important;
}

/*歌词间距*/
.aplayer .aplayer-lrc {
    margin: 4px 0 0px !important;
    height: 34px !important;
}

.aplayer .aplayer-lrc {
    text-align: left !important;
    margin-left: 5px !important;
}

/*歌词大小*/
.aplayer .aplayer-lrc p.aplayer-lrc-current {
    font-size: 14.5px !important;
}

/*全局字体颜色*/
.aplayer .aplayer-info .aplayer-music .aplayer-title,
.aplayer .aplayer-info .aplayer-music .aplayer-author,
.aplayer .aplayer-lrc p,
span.aplayer-list-title,
span.aplayer-list-author,
span.aplayer-list-index {
    color: var(--site-text) !important;
}

/*全局背景*/
.aplayer .aplayer-lrc:after,
.aplayer .aplayer-lrc:before {
    background: transparent !important;
}

#aplayer.left-mode {
    width: 360px !important;
    max-width: 360px !important;
    min-width: 360px !important;
    margin-left: 15px;
}
/*Aplayer结束*/

/*移动端页面切换按钮*/
i.iconfont.icon-bars,
i.iconfont.icon-times {
    font-size: 1.25rem;
}

/*页脚样式*/
footer {
    position: relative;
    z-index: 2;
    text-align: center;
    min-height: 46px;
    height: auto;
    flex: 0 0 auto;
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    background: var(--glass-tint);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    box-sizing: border-box;
}

.power {
    line-height: 1.45;
    color: var(--site-text);
    width: 100%;
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    animation: fade;
    -webkit-animation: fade 0.75s;
    -moz-animation: fade 0.75s;
    -o-animation: fade 0.75s;
    -ms-animation: fade 0.75s;
}

/*播放音乐时底栏歌词*/
#lrc {
    display: none;
    line-height: 1.45;
    color: var(--site-text);
    width: 100%;
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    animation: fade;
    -webkit-animation: fade 0.75s;
    -moz-animation: fade 0.75s;
    -o-animation: fade 0.75s;
    -ms-animation: fade 0.75s;
}

/*弹窗样式*/
.iziToast {
    backdrop-filter: blur(10px) !important;
}

.iziToast>.iziToast-body .iziToast-title {
    font-size: 16px !important;
}

.iziToast-body .iziToast-message {
    line-height: 18px !important;
}

.iziToast>.iziToast-body .iziToast-message {
    margin: 6px 0px 4px 0px !important;
}

.iziToast:after {
    box-shadow: none !important;
}

.iziToast>.iziToast-body .iziToast-texts {
    margin: 6px 6px !important;
    display: flex !important;
    align-items: center;
}

.iziToast-message {
    word-break: break-all !important;
}

.iziToast>.iziToast-close {
    background: url(https://cdn.jsdelivr.net/gh/imsyy/file/pic/close.png) no-repeat 50% 50% !important;
    background-size: 8px !important;
}

/*滚动条样式*/
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
    background-color: transparent;
}

::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: var(--site-text);
}

/* 手机按钮样式 */
#phone-button {
  display: inline-flex;
  align-items: center;
  font-size: 1.1rem;
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
  border: none;
  padding: 10px;
  cursor: pointer;
  border-radius: 4px;
}

#phone-button i {
  margin-right: 8px;
  font-size: 1.5rem;
}

#phone-button:hover {
  color: #0056b3;
}

/* 弹窗按钮容器 */
.button-group {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

/* 左上角功能图标 */
.top-left-icons {
    position: fixed;
    top: 10px;
    left: 10px;
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: flex-start;
    z-index: 999;
}

.app-container {
    display: flex;
    flex-direction: row;
    gap: 8px;
}

.app-icon {
    width: 32px;
    height: 32px;
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 应用图标的图片样式 */
.app-icon img {
    max-width: 100%;
    max-height: 100%;
    height: 32px;
    width: 32px;
}

/* 语言选择容器 */
.language-placeholder {
    width: 32px;
    height: 32px;
}

.language-container {
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 1000;
    background-color: transparent;
    padding: 0;
    border: none;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.language-container::after {
    content: "";
    position: absolute;
    top: 100%;
    left: -8px;
    width: min(230px, calc(100vw - 20px));
    height: 14px;
    display: none;
}

.language-container:hover::after,
.language-container.open::after {
    display: block;
}

/* 图标按钮 */
.language-icon {
    width: 32px;
    height: 32px;
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.language-icon img {
    max-width: 100%;
    max-height: 100%;
}

/* 下拉菜单 */
.language-dropdown {
    display: block;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    background: var(--glass-tint);
    backdrop-filter: blur(3px) saturate(1.1);
    -webkit-backdrop-filter: blur(3px) saturate(1.1);
    border-radius: 6px;
    padding: 8px 0;
    min-width: 200px;
    max-width: calc(100vw - 20px);
    white-space: nowrap;
    box-sizing: border-box;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    opacity: 0;
    transform: translateY(5px);
    transition: opacity var(--motion-fast) var(--ease-out),
        transform var(--motion-fast) var(--ease-out),
        visibility 0s linear var(--motion-fast);
    visibility: hidden;
    pointer-events: none;
}

/* 下拉菜单项 */
.language-dropdown .translate {
    padding: 8px 14px;
    color: var(--site-text);
    font-size: 0.95rem;
    cursor: pointer;
    white-space: normal;
    overflow-wrap: anywhere;
    transition: background-color var(--motion-fast) ease,
        color var(--motion-fast) ease;
}

/* hover 效果：半透明亮起 + 微放大 */
.language-dropdown .translate:hover {
    background: var(--glass-menu-hover);
}

/* 显示状态 */
.language-container:hover .language-dropdown,
.language-container.open .language-dropdown,
.language-container .language-dropdown.show-dropdown {
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0);
}

/* 每一项 */
.language-dropdown .translate {
    padding: 8px 14px;
    color: var(--site-text);
    font-size: 0.95rem;
    cursor: pointer;
    transition: background-color var(--motion-fast) ease,
        color var(--motion-fast) ease;
}

/* hover 高亮 */
.language-dropdown .translate:hover {
    background: var(--glass-menu-hover);
    font-size: 1rem;
}

/* 背景遮罩 */
.terms-box {
    position: fixed;
    inset: 0;
    z-index: 1996;
    background: var(--page-scrim);
    backdrop-filter: blur(20px);
    animation: fade .3s;
}

/* 主容器 */
.terms-wrapper {
    position: absolute;
    top: 8%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 84vh;
    background: var(--glass-tint);
    border-radius: 10px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* 关闭按钮 */
.terms-close {
    position: absolute;
    z-index: 888888;
    right: 20px;
    top: 20px;
    cursor: pointer;
}
.terms-close:hover {
    transform: scale(1.2);
}

/* 上区整体上下结构 */
.terms-header {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.3);
}

/* Logo + 标题 */
.terms-header-logo {
    display: flex;
    align-items: center;
    gap: 14px;
}

.terms-header-logo-img {
    width: 64px;
    height: 64px;
    border-radius: 8px;
}

/* 标题文字 */
.terms-header-title {
    position: relative;
    display: inline-block;
    line-height: 1;
    overflow: visible;
    transform: translateY(-0.42em);
}

.terms-header-title-main {
    display: block;
    font-size: 2.8rem;
    line-height: 1;
    color: var(--site-text);
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-0.12em);
}

.terms-header-title-sub {
    position: absolute;
    left: calc(100% + 0.12em);
    bottom: 0.18em;
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    color: var(--site-text);
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-0.12em);
}

.terms-header-version {
    font-size: 1.8rem;
    color: var(--site-text);
    margin-left: 6px;
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-5px);
}

/* 选项菜单：自动换行 */
.terms-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.terms-tab {
    padding: 8px 18px;
    border-radius: 6px;
    border: none;
    background: var(--glass-control-tint);
    color: var(--site-text);
    cursor: pointer;
    transition: background-color var(--motion-fast) ease,
        transform var(--motion-fast) var(--ease-out),
        box-shadow var(--motion-fast) ease;
}

.terms-tab:hover {
    background: var(--glass-menu-hover);
}

.terms-tab.active {
    background: var(--glass-menu-hover);
    font-weight: bold;
}

/* 下区内容 */
.terms-content {
    flex: 1;
    overflow-y: auto;
    padding: 20px 10px;
}

.terms-panel {
    display: none;
    animation: fade .3s;
}

/* 标题（h1 ~ h6） */
.terms-panel h1,
.terms-panel h2,
.terms-panel h3,
.terms-panel h4,
.terms-panel h5,
.terms-panel h6 {
    font-family: 'MiSans', sans-serif;
    font-weight: 600;
    margin-top: 0.5rem;
    line-height: 1.4;
}

/* 各级标题大小（rem 单位） */
.terms-panel h1 { font-size: 1.75rem; }   /* ~28px */
.terms-panel h2 { font-size: 1.5rem; }    /* ~24px */
.terms-panel h3 { font-size: 1.25rem; }   /* ~20px */
.terms-panel h4 { font-size: 1.125rem; }  /* ~18px */
.terms-panel h5 { font-size: 1rem; }      /* ~16px */
.terms-panel h6 { font-size: 0.875rem; }  /* ~14px */

/* 正文段落与列表 */
.terms-panel p,
.terms-panel li {
    font-family: 'MiSans', sans-serif;
    font-size: 0.9375rem; /* 15px */
    line-height: 1.7;
}

.terms-panel.show {
    display: block;
}

/* 动画 */
@keyframes fade {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* 默认隐藏 */
.open-terms {
    display: none;
    justify-content: center;
    background: var(--glass-control-tint);
    padding: 4px 0px;
    font-size: 0.95rem;
    animation: fade 0.5s;
}

/* 鼠标移到 .time.cards 时显示 */
.time.cards:hover .open-terms {
    display: flex;
}

.open-terms:hover {
    background: var(--glass-menu-hover);
}

/*客服热线弹窗 */
.popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--page-scrim);
    backdrop-filter: blur(10px);
    z-index: 1999;

    justify-content: center;
    align-items: center;

    opacity: 0;
    transition: opacity 0.25s ease;
}

/* 显示状态：真正渲染 + 淡入 */
.popup.show {
    display: flex;
    opacity: 1;
}

/* 弹窗主体 */
.popup-content {
    background: var(--glass-tint);
    backdrop-filter: blur(12px);
    border-radius: 10px;

    padding: 24px 28px;
    width: 80%;
    max-width: 380px;
    text-align: center;

    box-shadow: 0 4px 12px rgba(0,0,0,0.25);

    transform: translateY(10px);
    opacity: 0;
    transition: opacity var(--motion-standard) var(--ease-out),
        transform var(--motion-standard) var(--ease-out);
}

.popup.show .popup-content {
    transform: translateY(0);
    opacity: 1;
}

/* 标题 */
.popup-content h3 {
    margin-bottom: 16px;
    font-size: 1.4rem;
    color: var(--site-text);
}

/* 文本 */
.popup-content p {
    margin: 10px 0;
    color: var(--site-text);
    font-size: 1rem;
}

/* 无彩色毛玻璃按钮 */
.popup-content .btn,
.cancel-btn {
    padding: 10px 20px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    margin: 8px 6px;

    /* 毛玻璃按钮 */
    background: var(--glass-control-tint);
    backdrop-filter: blur(8px);
    color: var(--site-text);

    transition: background-color var(--motion-fast) ease,
        transform var(--motion-fast) var(--ease-out),
        box-shadow var(--motion-fast) ease;
}

/* hover：轻微亮起 + 微放大 */
.popup-content .btn:hover,
.cancel-btn:hover {
    background: var(--glass-menu-hover);
    transform: scale(1.05);
}

/* 微信二维码 */
.wechat-qrcode {
    width: 180px;
    height: 180px;
    margin: 16px auto;
    display: block;
    border-radius: 8px;
    background: var(--glass-control-tint);
    padding: 6px;
}

/* v26.2 LINK翻页 */
.link .swiper {
    width: 100%;
    overflow: hidden;
}

.link .swiper-wrapper {
    touch-action: pan-y;
}

.link .swiper-slide {
    width: 100% !important;
    display: block !important;
    height: auto !important;
    box-sizing: border-box;
}

.link .swiper-pagination {
    text-align: center !important;
    display: block !important;
    justify-content: center !important;
}

.link .swiper-pagination .swiper-pagination-bullet {
    display: inline-block !important;
}

/* 分页按钮美化 */
.link .swiper-pagination-bullet {
  display: inline-block;
  width: 20px;
  height: 4px;
  background: var(--site-text);
  opacity: 0.3;
  border-radius: 4px;
  margin: 0 4px;
  transition: opacity var(--motion-fast) ease,
    transform var(--motion-fast) var(--ease-out);
}

.link .swiper-pagination-bullet-active {
  opacity: 1;
}

.swiper-wrapper {
  display: flex !important;
}

.swiper-slide {
  flex-shrink: 0;
}

/* 每一行 */
.link .row {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
}

/* 每个卡片容器 */
.link .col-3 {
  flex: 0 0 calc(33.333% - 10.67px); 
  box-sizing: border-box;
}


/* 整体容器：强制从顶部开始 */
.time-capsule {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

/* 标题：左对齐 + 顶部 */
.title {
    display: flex;
    align-items: center;
    font-size: 1.1rem;
    margin: 0.5rem 0 1.2rem;
    justify-content: flex-start;
}

/* 时间块 */
.all-capsule {
    width: 100%;
}

/* 每一项 */
.capsule-item {
    margin-bottom: 1rem;
}

/* 标题行 */
.item-title {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    font-size: 0.95rem;
}

/* 剩余 */
.remaining {
    opacity: 0.6;
    font-size: 0.85rem;
    font-style: oblique;
}

/* 进度条 */
.progress {
    width: 100%;
    height: 20px;
    background: var(--glass-control-tint);
    border-radius: 10px;
    overflow: hidden;
}

.progress-bar {
    height: 100%;
    background: var(--site-text) !important;
    text-align: center;
    color: var(--page-background-color) !important;
    font-size: 12px;
    line-height: 20px;
    transition: width 0.5s;
}

.time-capsule .progress-percent {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--site-text);
    font-family: 'UnidreamLED' !important;
    font-size: 12px;
    line-height: 20px;
    pointer-events: none;
}

.time-capsule .progress-percent::after {
    content: attr(data-progress-text);
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--page-background-color);
    clip-path: inset(0 calc(100% - var(--progress-value)) 0 0);
    transition: clip-path 0.5s;
}

/* 杂项标题 */
.line {
    margin-top: 1.5rem;
    display: flex;
    align-items: center;
    font-size: 0.95rem;
}

/* 卡片区域 */
.link-row {
    margin-top: 0.5rem;
}

/* 公告系统 */
/* 背景遮罩 */
.announcement-box {
    position: fixed;
    inset: 0;
    z-index: 1996;
    background: var(--page-scrim);
    backdrop-filter: blur(20px);
    animation: fade .3s;
}

/* 主容器 */
.announcement-wrapper {
    position: absolute;
    top: 8%;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 84vh;
    background: var(--glass-tint);
    border-radius: 10px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* 关闭按钮 */
.announcement-close {
    position: absolute;
    z-index: 888888;
    right: 20px;
    top: 20px;
    cursor: pointer;
}
.announcement-close:hover {
    transform: scale(1.2);
}

/* Logo + 标题 */
.announcement-header {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.3);
}

.announcement-header-logo {
    display: flex;
    align-items: center;
    gap: 14px;
}

.announcement-header-logo-img {
    width: 64px;
    height: 64px;
    border-radius: 8px;
}

.announcement-header-title {
    position: relative;
    display: inline-block;
    line-height: 1;
    overflow: visible;
    transform: translateY(-0.42em);
}

.announcement-header-title-main {
    display: block;
    font-size: 2.8rem;
    line-height: 1;
    color: var(--site-text);
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-0.12em);
}

.announcement-header-title-sub {
    position: absolute;
    left: calc(100% + 0.12em);
    bottom: 0.18em;
    display: block;
    font-size: 1.4rem;
    line-height: 1;
    color: var(--site-text);
    font-family: 'Pacifico-Regular' !important;
    transform: translateY(-0.12em);
}

/* 内容区 */
.announcement-content {
    flex: 1;
    overflow-y: auto;
    padding: 20px 10px;
}

.announcement-content h1,
.announcement-content h2,
.announcement-content h3,
.announcement-content h4,
.announcement-content h5,
.announcement-content h6 {
    font-family: 'MiSans', sans-serif;
    font-weight: 600;
    margin-top: 0.5rem;
    line-height: 1.4;
}

.announcement-content p,
.announcement-content li {
    font-family: 'MiSans', sans-serif;
    font-size: 0.9375rem;
    line-height: 1.7;
}

@keyframes fade {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* LIQUID GLASS STYLES */
.message,
.hitokoto,
.music,
.time,
.link-card,
.more,
.box-wrapper,
.terms-wrapper,
.announcement-wrapper,
.popup-content,
.language-dropdown,
.social.social-glass,
.munu-button,
footer,
.iziToast {
    background: var(--glass-tint) !important;
    border: 1px solid var(--glass-border) !important;
    box-shadow: var(--glass-shadow), var(--glass-shine) !important;
    color: var(--site-text);
    isolation: isolate;
    backdrop-filter: var(--glass-backdrop) !important;
    -webkit-backdrop-filter: var(--glass-backdrop) !important;
}

.message,
.hitokoto,
.music,
.time,
.link-card,
.more,
.social.social-glass,
.language-dropdown {
    border-radius: var(--glass-radius) !important;
}

.box-wrapper,
.terms-wrapper,
.announcement-wrapper,
.popup-content,
.iziToast {
    border-radius: var(--glass-radius-large) !important;
}

footer {
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    border-radius: var(--glass-radius-large) var(--glass-radius-large) 0 0 !important;
}

.box,
.terms-box,
.announcement-box,
.popup {
    background: var(--page-scrim) !important;
    backdrop-filter: var(--glass-backdrop) !important;
    -webkit-backdrop-filter: var(--glass-backdrop) !important;
}

.open-music,
.open-terms,
#music-open,
#openmore,
#music-close,
i.iconfont.icon-play:hover,
i.iconfont.icon-pause:hover,
input[type=range],
input[type="radio"]+label,
.accordion-button:not(.collapsed),
.accordion-body,
.aplayer.aplayer-withlrc .aplayer-info,
.aplayer .aplayer-list ol li.aplayer-list-light,
.aplayer .aplayer-list ol li:hover,
.terms-tab,
.popup-content .btn,
.cancel-btn,
.progress {
    background: var(--glass-control-tint) !important;
    border: 1px solid var(--glass-border) !important;
    border-radius: var(--glass-radius-control) !important;
    box-shadow: var(--glass-shine) !important;
    backdrop-filter: var(--glass-backdrop) !important;
    -webkit-backdrop-filter: var(--glass-backdrop) !important;
}

.open-music:hover,
.open-terms:hover,
#music-open:hover,
#openmore:hover,
#music-close:hover,
input[type="radio"]+label:hover,
input[type="radio"]:checked+label,
.language-dropdown .translate:hover,
.terms-tab:hover,
.terms-tab.active,
.popup-content .btn:hover,
.cancel-btn:hover,
.link-card:hover {
    background: var(--glass-menu-hover) !important;
    box-shadow: var(--glass-menu-hover-shadow), var(--glass-shine) !important;
    backdrop-filter: var(--glass-hover-backdrop) !important;
    -webkit-backdrop-filter: var(--glass-hover-backdrop) !important;
}

.progress {
    overflow: hidden;
}

.progress-bar {
    background-color: var(--site-text) !important;
    color: var(--page-background-color) !important;
    border-radius: var(--glass-radius-pill);
}

.power,
#lrc,
.language-dropdown .translate,
.accordion-button,
.btn-outline-primary,
.terms-header-title-main,
.terms-header-title-sub,
.terms-header-version,
.announcement-header-title-main,
.announcement-header-title-sub,
.terms-tab,
.popup-content h3,
.popup-content p,
.popup-content .btn,
.cancel-btn,
.aplayer .aplayer-info .aplayer-music .aplayer-title,
.aplayer .aplayer-info .aplayer-music .aplayer-author,
.aplayer .aplayer-lrc p,
span.aplayer-list-title,
span.aplayer-list-author,
span.aplayer-list-index {
    color: var(--site-text) !important;
}

.remaining {
    color: var(--site-text-muted);
}

::-webkit-scrollbar-thumb {
    background-color: var(--site-text);
}

/* LIQUID GLASS UI FIXES */
.main-img img {
    border-radius: 0 !important;
    object-fit: contain;
}

.language-placeholder,
.theme-placeholder,
.pricing-placeholder {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
}

.theme-container,
.pricing-container {
    position: fixed;
    top: 10px;
    z-index: 1000;
    background-color: transparent;
    padding: 0;
    border: none;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.theme-container {
    left: 50px;
}

.pricing-container {
    left: 90px;
}

.theme-container::after {
    content: "";
    position: absolute;
    top: 100%;
    left: -8px;
    width: min(160px, calc(100vw - 60px));
    height: 14px;
    display: none;
}

.theme-container:hover::after,
.theme-container.open::after {
    display: block;
}

.theme-icon,
.pricing-icon {
    width: 32px;
    height: 32px;
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.theme-dropdown {
    display: block;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 118px;
    max-width: calc(100vw - 60px);
    padding: 8px 0;
    box-sizing: border-box;
    opacity: 0;
    transform: translateY(5px);
    transition: opacity var(--motion-fast) var(--ease-out),
        transform var(--motion-fast) var(--ease-out),
        visibility 0s linear var(--motion-fast);
    visibility: hidden;
    pointer-events: none;
}

.theme-container:hover .theme-dropdown,
.theme-container.open .theme-dropdown,
.theme-container .theme-dropdown.show-dropdown {
    visibility: visible;
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0);
}

.theme-option {
    width: 100%;
    border: 0;
    background: transparent;
    color: var(--site-text);
    cursor: pointer;
    display: block;
    font: inherit;
    padding: 8px 14px;
    text-align: left;
    white-space: nowrap;
}

.theme-option:hover,
.theme-option.active {
    background: var(--glass-menu-hover);
    box-shadow: var(--glass-menu-hover-shadow);
}

.theme-dropdown {
    background: var(--glass-tint) !important;
    border: 1px solid var(--glass-border) !important;
    border-radius: var(--glass-radius) !important;
    box-shadow: var(--glass-shadow), var(--glass-shine) !important;
    backdrop-filter: var(--glass-backdrop) !important;
    -webkit-backdrop-filter: var(--glass-backdrop) !important;
    overflow: hidden;
}

div.link,
div.link::before,
div.link::after,
.link,
.link::before,
.link::after,
.link-swiper,
.link-swiper.swiper,
.link-swiper.swiper-initialized,
.swiper.link-swiper,
.swiper.link-swiper.swiper-initialized,
.swiper.link-swiper[data-eusoft-scrollable-element],
.link-swiper[data-eusoft-scrollable-element],
.link-swiper::before,
.link-swiper::after {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.link .swiper,
.link .swiper-wrapper,
.link .swiper-slide,
.link .swiper-backface-hidden,
.link .swiper-backface-hidden .swiper-slide,
.link .row,
.link .col,
.link .col-3,
.link .swiper-pagination {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.link,
.link-swiper,
.swiper.link-swiper,
.link .swiper,
.link .swiper-wrapper,
.link .swiper-slide,
.link .row,
.link .col,
.link .col-3,
main,
.box,
.box-wrapper,
.box-left,
.box-right,
.aplayer,
.aplayer.aplayer-withlist .aplayer-list,
.aplayer .aplayer-list ol,
.terms-box,
.terms-wrapper,
.terms-menu,
.terms-content,
.announcement-box,
.announcement-wrapper,
.popup {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.link::-webkit-scrollbar,
.link-swiper::-webkit-scrollbar,
.swiper.link-swiper::-webkit-scrollbar,
.link .swiper::-webkit-scrollbar,
.link .swiper-wrapper::-webkit-scrollbar,
.link .swiper-slide::-webkit-scrollbar,
.link .row::-webkit-scrollbar,
.link .col::-webkit-scrollbar,
.link .col-3::-webkit-scrollbar,
main::-webkit-scrollbar,
.box::-webkit-scrollbar,
.box-wrapper::-webkit-scrollbar,
.box-left::-webkit-scrollbar,
.box-right::-webkit-scrollbar,
.aplayer::-webkit-scrollbar,
.aplayer.aplayer-withlist .aplayer-list::-webkit-scrollbar,
.aplayer .aplayer-list ol::-webkit-scrollbar,
.terms-box::-webkit-scrollbar,
.terms-wrapper::-webkit-scrollbar,
.terms-menu::-webkit-scrollbar,
.terms-content::-webkit-scrollbar,
.announcement-box::-webkit-scrollbar,
.announcement-wrapper::-webkit-scrollbar,
.popup::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

.main-right > .link,
.main-right > .link > .swiper.link-swiper,
.main-right > .link > .swiper.link-swiper > .swiper-wrapper,
.main-right > .link > .swiper.link-swiper > .swiper-wrapper > .swiper-slide,
.main-right > .link > .swiper.link-swiper .row,
.main-right > .link > .swiper.link-swiper .col,
.main-right > .link > .swiper.link-swiper .col-3,
.main-right > .link > .swiper.link-swiper .swiper-pagination {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    isolation: auto !important;
    outline: 0 !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

.main-right > .link > .swiper.link-swiper,
.main-right > .link > .swiper.link-swiper > .swiper-wrapper,
.main-right > .link > .swiper.link-swiper > .swiper-wrapper > .swiper-slide {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

.main-right > .link > .swiper.link-swiper::-webkit-scrollbar,
.main-right > .link > .swiper.link-swiper > .swiper-wrapper::-webkit-scrollbar,
.main-right > .link > .swiper.link-swiper > .swiper-wrapper > .swiper-slide::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

.main-right > .link .link-card {
    box-shadow: var(--glass-shine), 0 0 0 1px var(--glass-border) !important;
}

.main-right > .link .link-card:hover,
.main-right > .link .link-card:active {
    box-shadow: var(--glass-menu-hover-shadow), var(--glass-shine), 0 0 0 1px var(--glass-border) !important;
}

.language-icon,
.theme-icon,
.pricing-icon,
.app-icon {
    color: var(--site-text);
}

.language-dropdown {
    overflow: hidden;
}

.language-dropdown .translate,
.theme-option {
    border-radius: 0;
    background-clip: padding-box;
}

.language-dropdown .translate:first-child,
.theme-option:first-child {
    border-radius: calc(var(--glass-radius) - 2px) calc(var(--glass-radius) - 2px) 0 0;
}

.language-dropdown .translate:last-child,
.theme-option:last-child {
    border-radius: 0 0 calc(var(--glass-radius) - 2px) calc(var(--glass-radius) - 2px);
}

.social .link,
.social a.link,
button.link {
    -webkit-appearance: none;
    appearance: none;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    border-radius: var(--glass-radius-control);
    color: var(--site-text) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-clip: padding-box;
}

.social .link::before,
.social .link::after,
button.link::before,
button.link::after {
    content: none !important;
}

.social .link *,
.social .link svg,
.social .link i,
button.link *,
button.link svg,
button.link i {
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.social .link:hover,
.social .link:active,
.social .link:focus,
.social .link:focus-visible,
button.link:hover,
button.link:active,
button.link:focus,
button.link:focus-visible {
    background: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
    color: var(--site-text) !important;
}

.music,
.box-wrapper,
.box-right,
.aplayer,
.aplayer.aplayer-withlist .aplayer-list,
.aplayer .aplayer-list ol,
.terms-menu,
.terms-content {
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
}

.music::-webkit-scrollbar,
.box-wrapper::-webkit-scrollbar,
.box-right::-webkit-scrollbar,
.aplayer::-webkit-scrollbar,
.aplayer.aplayer-withlist .aplayer-list::-webkit-scrollbar,
.aplayer .aplayer-list ol::-webkit-scrollbar,
.terms-menu::-webkit-scrollbar,
.terms-content::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.music {
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

.music-button {
    flex-wrap: wrap;
}

#music-open,
#openmore,
#music-close {
    flex: 0 0 auto !important;
    min-width: max-content;
    width: auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
}

.box-wrapper {
    overflow: auto !important;
}

.box-right {
    align-items: stretch !important;
    box-sizing: border-box;
    overflow: auto !important;
    padding: 0 14px 0 18px;
}

.aplayer {
    margin: 0 !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
    width: 100% !important;
}

.aplayer.aplayer-withlist .aplayer-list {
    margin: 6px 0 0 !important;
    overflow-x: visible !important;
    overflow-y: auto !important;
    padding: 0 !important;
}

.aplayer .aplayer-list ol {
    box-sizing: border-box !important;
    overflow-x: visible !important;
    overflow-y: auto !important;
    padding: 0 8px 0 8px !important;
    width: 100% !important;
}

.aplayer .aplayer-list ol li {
    border-radius: var(--glass-radius-control) !important;
    box-sizing: border-box !important;
    margin: 0 0 4px !important;
    overflow: hidden !important;
    width: 100% !important;
}

.aplayer .aplayer-list ol li .aplayer-list-cur {
    left: 4px !important;
    border-radius: var(--glass-radius-pill);
}

.terms-menu {
    flex-wrap: nowrap !important;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 2px;
    white-space: nowrap;
}

.terms-tab {
    flex: 0 0 auto;
    white-space: nowrap;
}

a,
button,
.cards,
.link-card,
.social,
.social .link,
.music-button > div,
.aplayer,
.aplayer *,
.terms-tab,
.theme-option,
.language-dropdown .translate {
    -webkit-tap-highlight-color: transparent;
}

a:focus,
a:focus-visible,
button:focus,
button:focus-visible,
.cards:focus,
.cards:focus-visible,
.link-card:focus,
.link-card:focus-visible,
.social .link:focus,
.social .link:focus-visible,
.music-button > div:focus,
.music-button > div:focus-visible,
.aplayer *:focus,
.aplayer *:focus-visible,
.terms-tab:focus,
.terms-tab:focus-visible,
.theme-option:focus,
.theme-option:focus-visible,
.language-dropdown .translate:focus,
.language-dropdown .translate:focus-visible {
    outline: none !important;
    box-shadow: none;
}

.link-card:hover,
.link-card:active,
.music-button > div:hover,
.music-button > div:active,
.aplayer .aplayer-list ol li:hover,
.aplayer .aplayer-list ol li:active,
.aplayer .aplayer-list ol li.aplayer-list-light,
.terms-tab:hover,
.terms-tab:active,
.terms-tab.active,
.theme-option:hover,
.theme-option:active,
.theme-option.active,
.language-dropdown .translate:hover,
.language-dropdown .translate:active {
    outline: none !important;
}

#wallpaper input[type="radio"] + label {
    position: relative;
    color: var(--site-text) !important;
    font-weight: 600;
    padding: 7px 12px;
}

#wallpaper input[type="radio"]:checked + label {
    background: var(--site-text) !important;
    border-color: var(--site-text) !important;
    color: var(--page-background-color) !important;
    box-shadow:
        var(--glass-shine),
        0 0 0 2px var(--glass-border),
        0 0 18px rgba(255, 255, 255, 0.22) !important;
    transform: translateY(-1px);
}

.aplayer .aplayer-list ol li .aplayer-list-cur,
.aplayer .aplayer-list ol li.aplayer-list-light .aplayer-list-cur,
.aplayer-list-cur {
    display: none !important;
}

/* Shared language preference: button reset, selected state and keyboard focus. */
.language-dropdown .translate {
    width: 100%;
    border: 0;
    background: transparent;
    display: block;
    font: inherit;
    text-align: left;
    appearance: none;
}

.language-dropdown .translate.active {
    background: var(--glass-menu-hover) !important;
    box-shadow: var(--glass-menu-hover-shadow) !important;
}

.language-dropdown .translate:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: -3px;
}

.language-icon:focus-visible,
.theme-icon:focus-visible,
.theme-option:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: 2px;
}

/* 全屏卡片：与音乐列表保持一致，打开时不透出页脚和底层内容。 */
.modal-layer {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    overflow: hidden;
    animation: none !important;
    transition: opacity var(--motion-modal) var(--ease-out),
        visibility 0s linear var(--motion-modal);
}

.modal-layer.is-opening,
.modal-layer.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

.modal-layer.is-closing {
    opacity: 0;
    visibility: visible;
    pointer-events: none;
    transition: opacity var(--motion-modal) var(--ease-out),
        visibility 0s linear var(--motion-modal);
}

.box-wrapper,
.terms-wrapper,
.announcement-wrapper {
    opacity: 0;
    transform: translate(-50%, 0) scale(0.88);
    transform-origin: 50% 50%;
    animation: none !important;
    transition: opacity var(--motion-modal) var(--ease-out),
        transform var(--motion-modal) var(--ease-in-out);
}

.modal-layer.is-opening .box-wrapper,
.modal-layer.is-opening .terms-wrapper,
.modal-layer.is-opening .announcement-wrapper,
.modal-layer.is-open .box-wrapper,
.modal-layer.is-open .terms-wrapper,
.modal-layer.is-open .announcement-wrapper {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
}

/* 前后文按阅读顺序错位进入，异步 Markdown 也会复用同一节奏。 */
.modal-reveal {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 190ms var(--ease-out),
        transform 190ms var(--ease-out);
    transition-delay: 0ms;
}

.modal-layer.is-open .modal-reveal-pending {
    opacity: 0;
    transform: translateY(10px);
    transition: none;
}

.modal-layer.is-open .modal-reveal {
    opacity: 1;
    transform: translateY(0);
    transition-delay: var(--modal-reveal-delay, 58ms);
}

.modal-layer.is-closing .modal-reveal {
    opacity: 0;
    transform: translateY(-6px);
    transition-delay: var(--modal-reveal-exit-delay, 0ms);
}

/* 首页与弹层交叉淡入淡出，关闭时不再留下隐藏 body 的死状态。 */
#row,
#more,
.menu,
#footer {
    transition: opacity var(--motion-modal) var(--ease-out);
}

body.modal-opening #row,
body.modal-opening #more,
body.modal-opening .menu,
body.modal-opening #footer {
    opacity: 0;
    pointer-events: none !important;
}

body.modal-open #row,
body.modal-open #more,
body.modal-open .menu,
body.modal-open #footer,
body.modal-closing #row,
body.modal-closing #more,
body.modal-closing .menu,
body.modal-closing #footer {
    pointer-events: none !important;
}

.terms-close,
.announcement-close,
.closebox,
.close {
    transition: transform var(--motion-fast) var(--ease-out),
        opacity var(--motion-fast) var(--ease-out);
}

@media (hover: hover) and (pointer: fine) {
    .terms-close:hover,
    .announcement-close:hover,
    .closebox:hover,
    .close:hover {
        transform: scale(1.08);
    }
}

.terms-close:active,
.announcement-close:active,
.closebox:active,
.close:active,
.terms-tab:active,
#openmore:active,
#music-close:active,
.open-music:active,
.open-terms:active {
    transform: scale(0.97);
    transition-duration: var(--motion-fast);
}

.terms-tab,
#openmore,
#music-close,
.open-music,
.open-terms {
    transition: background-color var(--motion-fast) ease,
        transform var(--motion-fast) var(--ease-out),
        box-shadow var(--motion-fast) ease;
}

@media (prefers-reduced-motion: reduce) {
    .cards,
    .main-img img,
    .terms-tab,
    #openmore,
    #music-close,
    .open-music,
    .open-terms,
    .terms-close,
    .announcement-close,
    .closebox,
    .close {
        transition-duration: 180ms;
    }

    .cards:hover,
    .cards:active,
    .main-img img:hover,
    .terms-close:active,
    .announcement-close:active,
    .closebox:active,
    .close:active,
    .terms-tab:active,
    #openmore:active,
    #music-close:active,
    .open-music:active,
    .open-terms:active {
        transform: none;
    }

    .box-wrapper,
    .terms-wrapper,
    .announcement-wrapper,
    .modal-layer.is-opening .box-wrapper,
    .modal-layer.is-opening .terms-wrapper,
    .modal-layer.is-opening .announcement-wrapper,
    .modal-layer.is-open .box-wrapper,
    .modal-layer.is-open .terms-wrapper,
    .modal-layer.is-open .announcement-wrapper {
        transform: translate(-50%, 0);
        transition: opacity 180ms ease;
    }

    #row,
    #more,
    .menu,
    #footer {
        transition-duration: 180ms;
    }

    body.modal-opening #row,
    body.modal-opening #more,
    body.modal-opening .menu,
    body.modal-opening #footer {
        opacity: 0;
    }

    .modal-layer.is-closing {
        transition: opacity 180ms ease,
            visibility 0s linear 180ms;
    }

    .modal-reveal,
    .modal-layer.is-open .modal-reveal,
    .modal-layer.is-closing .modal-reveal {
        transform: none;
        transition: opacity 160ms ease;
    }
}

/* 壁纸设置按钮按网格均分，避免同一行因文案长短产生不同尺寸。 */
#wallpaper {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    align-items: stretch;
}

#wallpaper .form-radio {
    width: auto;
    min-width: 0;
    max-width: none;
    min-height: 44px;
    margin: 0;
    display: flex;
}

#wallpaper input[type="radio"] + label {
    width: 100%;
    min-height: 44px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1.2;
    overflow-wrap: anywhere;
}
