.sav-menu {
    font-family: Microsoft YaHei, sans-serif;
    position: fixed;
    display: block;
    text-align: left;
    color: #000;
    background: rgba(255, 255, 255, .8);
    backdrop-filter: blur(5px);
    border-radius: 4px;
    padding: 6px 12px 10px 9px;
    /* margin-top: -2px; */
    z-index: 99999;
    font-size: 14px;
    max-width: 700px;
    box-shadow: 4px 4px 12px #ccc, -1px -1px 5px #eee;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    transform: scale(1);
    transition: 0.2s;
    transition-timing-function: ease-out;
    animation: savOpenAnim 0.15s;
}

.savCloseAnim {
    animation: savCloseAnim 0.15s;
}

@keyframes savOpenAnim {
    0% {
        transform: scale(0.5);
        background: rgba(255, 255, 255, .1);
    }
    100% {
        transform: scale(1);
        background: rgba(255, 255, 255, .8);
    }
}

@keyframes savCloseAnim {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(0.5);
    }
}

/* 链接相关 */
.savlink {
    margin: 4px 4px 4px 4px;
    border-radius: 4px;
    padding: 3px 5px;
    background: #fff;
    display: inline-block;
    transition: 0.2s;
    transition-timing-function: ease-out;
    box-shadow: -2px -2px 4px rgb(240 240 240), 2px 2px 4px rgb(70 70 70 / 50%);
    cursor: pointer;
    user-select: none;
}

.savlink:not(.RPdisabled):hover {
    background: aliceblue;
    box-shadow: -2px -2px 6px rgb(255 255 255 / 50%), 1px 1px 2px rgb(70 70 70 / 50%), inset -2px -2px 6px rgb(255 255 255 / 50%), inset 2px 2px 6px rgb(100 100 100 / 50%);
}

.sav-menu .savlink a {
    color: #459df5;
    text-decoration: none;
    transition: 0.4s;
}

.sav-menu .savlink:not(.RPdisabled):hover a {
    color: #039cff;
    text-shadow: 0 0 #7cfb80;
}

avdivsinfo a, avdivsinfo a:visited, avdivsinfo a:link {
    color: #000;
    transition: 0.2s;
}

avdivsinfo a:hover {
    color: #850000;
}

/* 相关页面按钮 */
.relatedPage.RPdisabled {
    cursor: default;
}

.relatedPage.RPdisabled a {
    cursor: default;
    pointer-events: none;
    text-decoration: line-through;
    color: #333;
}

avdivsinfo {
    text-indent: -2.5em;
    line-height: normal;
}

avdivsinfo avdiv {
    display: block;
    margin-bottom: 5px;
    text-shadow: 0 0 #d9d9d9;
    transition: 0.2s;
    padding-left: 2.5em;
}

avdivsinfo .avInfoTags, avdivsinfo .avInfoSeries {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

avdiverror {
    display: block;
    margin-top: 10px;
    padding-left: 10px;
}

avdiverror avdiv {
    display: block;
    margin-bottom: 5px;
    transition: 0.2s;
}

avdiv .avimg, avdivsinfo img {
    height: 400px;
    max-width: 100%;
    max-height: 500px;
    cursor: pointer;
    box-shadow: -2px -2px 4px rgb(230 230 230), 2px 2px 2px rgb(70 70 70 / 50%);
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
    border-radius: 4px;
    transform-origin: center 80%;
    transition: 0.2s;
    transition-timing-function: ease-out;
}

avdiv .imageBig {
    max-height: 600px;
    transform: scale(1.3);
    border-radius: 10px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    box-shadow: -2px -2px 4px rgb(160 160 160), 4px 4px 4px rgb(70 70 70 / 60%);
}
avdiv .imageBigClick {
    max-height: 600px;
    transform: scale(2);
    border-radius: 10px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    box-shadow: -2px -2px 4px rgb(160 160 160), 4px 4px 4px rgb(70 70 70 / 60%);
}

avdiv .imageBig:hover {
    box-shadow: -4px -4px 8px rgb(160 160 160), 6px 6px 8px rgb(70 70 70 / 60%);
}

savdiv.sav-id {
    transition: 0.5s;
}

savdiv.sav-id, savmagnet {
    cursor: pointer;
}

u:has(savdiv) {
    text-decoration: none;
}

.yesJellyfin {
    color: #459df5
}

.noJellyfin {
    text-decoration: line-through;
}

avspan svg {
    height: 14px;
    position: relative;
    top: 0.1em;
    opacity: 0.8;
    transition: 0.2s;
    display: inline-block;
    vertical-align: baseline;
}

avspan svg:hover {
    opacity: 1;
}

avdiv.sav-menu .avimg.savImgError {
    height: 200px;
}

/* 动画: 横线加载时的动画 */
@keyframes sav-loading-animation {
    from {
        transform: translate(0, 0);
    }
    to {
        transform: translate(50%, 0);
    }
}

.savLoadingContainer {
    display: block;
    overflow: hidden;
    width: 100%;
    transition: 0.1s;
    height: 3px;
    margin-top: 5px;
}

.savLoading {
    display: block;
    font-size: 0;
    height: 100%;
    width: 200%;
    position: relative;
    transition: 0.2s;
    animation: sav-loading-animation 3s linear infinite;
}

.savLoading svg {
    border: none;
    height: 100%;
    width: 50%;
    position: absolute;
}

.savLoading svg:last-child {
    left: -50%;
}

.stop1, .stop3 {
    stop-color: #fff0;
}

.stop2 {
    stop-color: #6dc4ed;
    transition: 1s;
}

.stop2.javbusloading {
    stop-color: #71d99b;
}

.stop2.javdbloading {
    stop-color: #cccc00;
}

.stop2.fc2loading {
    stop-color: #F8A01C;
}

/* 预览视频 */
avdivimg {
    position: relative;
    display: block;
    text-indent: initial;
    user-select: none;
}

.avimg-preview-button {
    width: 40px;
    height: 40px;
    border-radius: 40px;
    background: #00e7ff00;
    opacity: 0.8;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
    transition: 0.4s;
    animation: savOpenAnim2 0.15s;

}

@keyframes huerotate {
    0% {
        filter: hue-rotate(0deg);
    }
    100% {
        filter: hue-rotate(360deg);
    }
}

.avimg-preview-button:hover {
    opacity: 1;
    background: #00e7ff;
}

.avimg-preview-button:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'  viewBox='0 0 512 512'%3E%3Cpath d='M448 255c0-106-86-192-192-192S64 150 64 256s86 192 192 192 192-86 192-192z' fill=''  fill-opacity='0.8' stroke='none'/%3E%3Cpath fill='white' d='M216.32  334.44l114.45-69.14a10.89 10.89 0 000-18.6l-114.45-69.14a10.78 10.78 0 00-16.32 9.31v138.26a10.78 10.78 0 0016.32 9.31z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 48px 48px;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    /* border: 2px solid;
    border-image:linear-gradient(45deg,gold,deeppink)1; */
}

.savCloseAnim2, avdivimg:has(avdivVideo) .avimg-preview-button, avdivimg:has(.imageBig) .avimg-preview-button {
    animation: savCloseAnim2 0.15s;
    animation-fill-mode: forwards;
}

avdivVideo {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    animation: savOpenAnim2 0.15s;
}

avdivimg video {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #fff9;
    backdrop-filter: blur(5px);
    border-radius: 4px;
}

.savVideoClose {
    position: absolute;
    right: 0;
    top: 0;
    padding: 7px 10px 7px 97%;
    border-radius: 4px;
    cursor: pointer;
    transition: 0.4s;
}

iframe + .savVideoClose {
    color: #fff;
}

.savVideoClose:hover {
    color: red;
    background: #fff8;
}

avdivvideo iframe {
    width: 100%;
    height: 100%;
    border: none;
}

@keyframes savOpenAnim2 {
    0% {
        opacity: 0;
        transform: scale(0);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes savCloseAnim2 {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(0);
    }
}

/* 对其他网站的一些更改 */
.fc2-embed-video-player.opt_logo .fc2-video-player .fc2-video-metadata {
    display: none !important;
}

.fc2-video-player-logo {
    display: none !important;
}