@font-face {
  font-family: 'Alex Brush';
  src: url('../assets/fonts/AlexBrush-Regular.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
}

/* 重置样式 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 全局鼠标指针样式 */
html, body, div, span, img, a, 
.photo-wall, .photo-item, .photo-viewer, .photo-viewer-content,
#mainContent, .modal, .close-button, .intro-page {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path d="M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5C2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z" fill="%23FF4081" stroke="%23D81B60" stroke-width="1"><animate attributeName="opacity" values="0.8;1;0.8" dur="2s" repeatCount="indefinite" /></path></svg>') 16 16, auto !important;
}

body {
    font-family: 'Arial', sans-serif;
    background: white;
    color: #333;
    min-height: 100vh;
    position: relative;
    overflow-x: hidden;
}

/* 头部样式 */
header {
    display: none; /* 隐藏标题 */
}

header h1 {
    font-size: 3rem;
    color: #ff6b95;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
    font-weight: bold;
    letter-spacing: 1px;
    animation: heartbeat 1.5s infinite alternate;
    font-family: 'Ma Shan Zheng', cursive, 'Arial', sans-serif;
}

@keyframes heartbeat {
    0% { transform: scale(1); }
    100% { transform: scale(1.05); }
}

.highlight {
    color: #ff2d55;
    position: relative;
    display: inline-block;
    padding: 0 5px;
}

.highlight::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 5px;
    background-color: rgba(255, 105, 180, 0.3);
    bottom: 5px;
    left: 0;
    z-index: -1;
}

.heart {
    display: inline-block;
    animation: pulse 1s infinite;
    vertical-align: middle;
    color: red;
    margin-left: 5px;
    text-shadow: 0 0 10px rgba(255, 0, 0, 0.5);
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.3); }
    100% { transform: scale(1); }
}

/* 照片墙样式 - Pinterest风格 */
.photo-wall {
    position: relative;
    padding: 0;
    overflow: hidden;
    max-width: 100%;
    margin: 0;
    width: 100%;
    box-sizing: border-box;
    background-color: white;
}

.photo-wall .photo-item {
    position: absolute; /* 绝对定位用于Masonry布局 */
    overflow: hidden;
    background-color: #f0f0f0; /* 加载中的背景色 */
    display: flex;
    justify-content: center;
    align-items: center;
    transition: transform 0.3s ease, opacity 0.3s ease;
    box-sizing: border-box;
    border-radius: 8px; /* 添加圆角效果 */
    margin: 0;
    padding: 0;
}

@media (max-width: 1024px) {
    .photo-wall .photo-item {
        width: calc(33.333% - 4px); /* 3列布局 */
    }
}

@media (max-width: 768px) {
    .photo-wall .photo-item {
        width: calc(50% - 4px); /* 2列布局 */
    }
}

@media (max-width: 480px) {
    .photo-wall .photo-item {
        width: calc(100% - 4px); /* 1列布局 */
    }
}

.photo-wall .photo-item:hover {
    transform: translateY(-5px);
    z-index: 10;
}

.photo-wall img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain; /* 保持原始比例 */
    transition: transform 0.4s ease;
    padding: 0;
    box-sizing: border-box;
    background-color: white;
    will-change: transform;
    transform: translateZ(0);
    border-radius: 8px; /* 添加圆角效果 */
}

/* 为懒加载的图片添加占位样式 */
.lazy {
    opacity: 0;
    transition: opacity 0.5s ease;
    background-image: linear-gradient(90deg, #f0f0f0 0px, #e0e0e0 50%, #f0f0f0 100%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
}

@keyframes shimmer {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

.lazy[src] {
    opacity: 1;
}

/* 响应式设计 */
@media (max-width: 1024px) {
    .photo-wall {
        column-count: 3;
    }
}

@media (max-width: 768px) {
    .photo-wall {
        column-count: 2;
    }
    
    .photo-wall .photo-item {
        margin-bottom: 0px;
    }
}

@media (max-width: 480px) {
    .photo-wall {
        column-count: 1;
    }
}

/* u89c6u9891u64adu653eu5165u53e3u6837u5f0f */
.video-overlay {
    position: fixed;
    bottom: 30px;
    right: 30px;
    cursor: pointer;
    opacity: 0.95;
    z-index: 100;
    transition: all 0.3s ease;
    background: transparent;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: none;
}

.video-overlay:hover {
    transform: scale(1.13);
}

.video-overlay img {
    width: 64px;
    height: 64px;
    filter: brightness(0) invert(1); /* 变为白色 */
    background: none;
    -webkit-mask-image: none;
    mask-image: none;
    display: block;
    animation: none;
    box-shadow: none;
    /* 粉色发光 */
    filter: brightness(0) invert(1) drop-shadow(0 0 16px #ff4da6) drop-shadow(0 0 32px #ff4da6);
}

/* u60acu6d6eu6587u672c */
.video-overlay::after {
    content: 'u64adu653eu89c6u9891';
    position: absolute;
    white-space: nowrap;
    background-color: #333;
    color: white;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
    bottom: 105%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
    margin-bottom: 10px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
}

.video-overlay:hover::after {
    opacity: 1;
}

/* 模态弹窗样式 */
.modal {
    display: none; /* 默认隐藏 */
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.85);
    animation: fadeIn 0.5s;
    backdrop-filter: blur(5px);
}

.modal-content {
    position: relative;
    margin: 5% auto;
    padding: 0;
    width: 85%;
    max-width: 900px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0,0,0,0.3);
    transform: scale(0.9);
    animation: zoomIn 0.5s forwards;
}

.modal-content video {
    width: 100%;
    height: auto;
    border-radius: 10px;
    display: block;
}

.close-button {
    position: absolute;
    top: -20px;
    right: -20px;
    color: #fff;
    background-color: #ff6b95;
    border: 3px solid white;
    border-radius: 50%;
    font-size: 1.8rem;
    cursor: pointer;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 34px;
    transition: all 0.3s;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

.close-button:hover {
    background-color: #ff4d79;
    transform: rotate(90deg);
}

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

@keyframes zoomIn {
    from {transform: scale(0.8); opacity: 0;}
    to {transform: scale(1); opacity: 1;}
}

/* 页面装饰元素 */
body::before, body::after {
    content: '';
    position: fixed;
    width: 100px;
    height: 100px;
    background-image: url('../assets/icons/heart.png');
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0.1;
    z-index: -1;
}

body::before {
    top: 10%;
    left: 5%;
    animation: float 8s ease-in-out infinite;
}

body::after {
    bottom: 10%;
    right: 5%;
    animation: float 10s ease-in-out infinite reverse;
}

@keyframes float {
    0% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(5deg); }
    100% { transform: translateY(0) rotate(0deg); }
}

/* 底部浮动元素特效 */
.floating-heart, .floating-star, .floating-moon {
    position: fixed;
    opacity: 0;
    z-index: 50;
    bottom: -10px;
    pointer-events: none;
    width: 32px;
    height: 32px;
    background-size: contain;
    background-repeat: no-repeat;
    transform-origin: center center;
}

.floating-heart {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path d="M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5C2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z" fill="%23FF4081" stroke="%23D81B60" stroke-width="1" /></svg>');
    animation: float-up-heart 6s linear forwards;
}

.floating-star {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path d="M12,17.27L18.18,21l-1.64-7.03L22,9.24l-7.19-0.61L12,2L9.19,8.63L2,9.24l5.46,4.73L5.82,21L12,17.27z" fill="%23FFD54F" stroke="%23FB8C00" stroke-width="1" /></svg>');
    animation: float-up-star 6s linear forwards;
}

.floating-moon {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path d="M10,2C8.18,2,6.47,2.5,5,3.35C8,5.08,10,8.3,10,12c0,3.7-2,6.92-5,8.65C6.47,21.5,8.18,22,10,22c5.52,0,10-4.48,10-10 C20,6.48,15.52,2,10,2z" fill="%23FFD54F" stroke="%23FB8C00" stroke-width="1" /></svg>');
    animation: float-up-moon 6s linear forwards;
}

@keyframes float-up-heart {
    0% {
        transform: translateY(0) rotate(0deg);
        opacity: 0;
    }
    10% {
        opacity: 0.9;
    }
    90% {
        opacity: 0.9;
    }
    100% {
        transform: translateY(-100vh) rotate(360deg);
        opacity: 0;
    }
}

@keyframes float-up-star {
    0% {
        transform: translateY(0) rotate(0deg);
        opacity: 0;
    }
    10% {
        opacity: 0.9;
    }
    90% {
        opacity: 0.9;
    }
    100% {
        transform: translateY(-100vh) rotate(360deg);
        opacity: 0;
    }
}

@keyframes float-up-moon {
    0% {
        transform: translateY(0) rotate(0deg);
        opacity: 0;
    }
    10% {
        opacity: 0.9;
    }
    90% {
        opacity: 0.9;
    }
    100% {
        transform: translateY(-100vh) rotate(-360deg);
        opacity: 0;
    }
}

/* Pinterest风格导航栏 */
.pinterest-nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: white; /* 修改为白色背景 */
    padding: 24px 16px; /* 增加上下内边距，使高度增加 */
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    z-index: 1000;
}

.nav-container {
    display: flex;
    align-items: center;
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: border-box;
    padding-left: 0; /* 导航容器不设置内边距 */
    position: relative; /* 相对定位，用于子元素的绝对定位 */
}

.logo {
    font-weight: bold;
    font-size: 22px; /* 增大字体 */
    color: rgb(102, 8, 116); /* 改为指定颜色 */
    font-family: 'Noto Serif SC', serif;
    letter-spacing: 1px;
    text-align: left; /* 文本左对齐 */
    position: absolute; /* 绝对定位 */
    left: 38.2%; /* 黄金分割点 */
    transform: translateX(-50%); /* 向左偏移自身宽度的一半 */
    line-height: 1.5; /* 增加行高以便于计算 */
}

.search-bar {
    flex: 1;
    display: flex;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 24px;
    padding: 8px 16px;
    margin: 0 16px;
}

.search-bar i {
    color: white;
    margin-right: 8px;
}

.search-bar input {
    flex: 1;
    border: none;
    background-color: transparent;
    font-size: 16px;
    outline: none;
    color: white;
    font-family: 'Noto Serif SC', serif;
}

.search-bar input::placeholder {
    color: rgba(255, 255, 255, 0.7);
}

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

.nav-icon {
    color: white;
    margin-left: 16px;
    cursor: pointer;
    transition: color 0.2s, transform 0.2s;
}

.nav-icon:hover {
    color: #ffffff;
    transform: scale(1.1);
}

/* 调整主内容区域的padding以适应固定导航栏 */
main {
    padding-top: 80px; /* 增加顶部内边距，适应更高的导航栏 */
    background-color: white; /* 新的背景色 */
    min-height: 100vh;
    width: 100%;
    overflow-x: hidden;
}

/* 视频背景入口页面 */
.intro-page {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2000;
    transition: opacity 1s ease-in-out, visibility 1s ease-in-out;
}

.intro-page.fade-out {
    opacity: 0;
    visibility: hidden;
}

.video-bg-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #000;
}

/* 视频背景 */
.video-background {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 1;
    object-fit: cover;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}

/* 视频覆盖滤镜，增强文字可读性 */
.video-overlay-filter {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    z-index: 2;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.7;
    }
    50% {
        transform: scale(1.2);
        opacity: 1;
    }
    100% {
        transform: scale(0.9);
        opacity: 0.8;
    }
}

.intro-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: white;
    z-index: 10;
    width: 80%;
    text-shadow: 0 0 10px rgba(5, 1, 45, 0.8), 0 0 20px rgba(5, 1, 45, 0.6);
}

.intro-content h1 {
    font-size: 4rem;
    margin-bottom: 20px;
    font-family: 'Noto Serif SC', serif;
    animation: glow 2s ease-in-out infinite alternate;
    letter-spacing: 2px;
}

.intro-content p {
    font-size: 1.5rem;
    margin-top: 30px;
    opacity: 0.8;
    font-family: 'Noto Serif SC', serif;
}

@keyframes glow {
    from {text-shadow: 0 0 10px #fff, 0 0 20px #fff, 0 0 30px #e60073, 0 0 40px #e60073;}
    to {text-shadow: 0 0 20px #fff, 0 0 30px #ff4da6, 0 0 40px #ff4da6, 0 0 50px #ff4da6;}
}

/* 主内容区隐藏与显示 */
.hidden {
    opacity: 0;
    visibility: hidden;
    transition: opacity 1s ease-in-out, visibility 0s linear 1s;
}

#mainContent.visible {
    opacity: 1;
    visibility: visible;
    transition: opacity 1s ease-in-out;
}

/* 视频背景样式调整 */
.intro-content {
    z-index: 10;
}

/* 鼠标指针轨迹星星样式 - 多样化的星星 */
.star-trail {
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 100 100"><path d="M50 5 L55 35 L85 35 L65 55 L75 85 L50 70 L25 85 L35 55 L15 35 L45 35 Z" fill="%23FFD54F" stroke="%23FB8C00" stroke-width="2" /></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 10000;
    opacity: 0.9;
    transform-origin: center center;
    animation: fade-out-trail 1.8s forwards;
}

.star-trail-1 {
    filter: hue-rotate(0deg);
}

.star-trail-2 {
    filter: hue-rotate(60deg);
}

.star-trail-3 {
    filter: hue-rotate(120deg);
}

.star-trail-4 {
    filter: hue-rotate(180deg);
}

.star-trail-tiny {
    width: 10px;
    height: 10px;
}

@keyframes fade-out-trail {
    0% {
        opacity: 1;
        transform: scale(0.2) translateY(0);
    }
    20% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(0.2) translateY(100px) rotate(180deg);
    }
}

/* 爱心拖尾粒子 */
.heart-particle {
    position: absolute;
    width: 16px;
    height: 16px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5C2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z" fill="%23FF4081" /></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 10000;
    opacity: 0.9;
    transform-origin: center center;
    animation: heart-fall 1.5s forwards;
}

@keyframes heart-fall {
    0% {
        opacity: 1;
        transform: scale(0.2) translateY(0);
    }
    20% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(0.2) translateY(120px);
    }
}

/* 月亮粒子 */
.moon-particle {
    position: absolute;
    width: 18px;
    height: 18px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M9,2C7.95,2 6.95,2.16 6,2.46C10.06,3.73 13,7.5 13,12C13,16.5 10.06,20.27 6,21.54C6.95,21.84 7.95,22 9,22A10,10 0 0,0 19,12A10,10 0 0,0 9,2Z" fill="%23FFD54F" stroke="%23FB8C00" stroke-width="1" /></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 10000;
    opacity: 0.9;
    transform-origin: center center;
    animation: moon-float 2s forwards;
    filter: drop-shadow(0 0 3px rgba(255, 213, 79, 0.6));
}

@keyframes moon-float {
    0% {
        opacity: 1;
        transform: scale(0.2) translateY(0) rotate(0deg);
    }
    20% {
        opacity: 1;
        transform: scale(1) rotate(20deg);
    }
    60% {
        opacity: 0.8;
    }
    100% {
        opacity: 0;
        transform: scale(0.5) translateY(100px) rotate(60deg);
    }
}

/* 星星粒子 */
.star-particle {
    position: absolute;
    width: 8px;
    height: 8px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 100 100"><path d="M50 5 L55 35 L85 35 L65 55 L75 85 L50 70 L25 85 L35 55 L15 35 L45 35 Z" fill="%23FFD54F" /></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
    z-index: 10000;
    opacity: 0.9;
    transform-origin: center center;
    animation: particle-animation 1.2s forwards;
}

@keyframes particle-animation {
    0% {
        opacity: 1;
        transform: scale(0.5) translate(0, 0);
    }
    100% {
        opacity: 0;
        transform: scale(0.1) translate(var(--x), var(--y));
    }
}

/* 照片悬停放大效果 */
.photo-wall .photo-item:hover img {
    transform: scale(1.05);
    z-index: 10;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

/* 照片查看器样式 */
.photo-viewer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 2000;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.photo-viewer.active {
    opacity: 1;
    pointer-events: auto;
}

.photo-viewer-content {
    position: relative;
    max-width: 90%;
    max-height: 90%;
    transform: scale(0.9);
    transition: transform 0.3s ease;
    cursor: grab;
}

.photo-viewer.active .photo-viewer-content {
    transform: scale(1);
}

.photo-viewer-content:active {
    cursor: grabbing;
}

/* 胶片打印风格容器 */
.photo-frame {
    background-color: white;
    padding: 20px 20px 70px 20px; /* 顶部和侧面20px，底部70px */
    border-radius: 2px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    position: relative;
    display: inline-block;
    box-sizing: content-box;
    transform-origin: center center;
    transition: transform 0.2s;
}

.photo-viewer-image {
    max-width: 100%;
    max-height: 70vh;
    border-radius: 1px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1) inset;
    transform-origin: center;
    transition: transform 0.2s ease;
}

/* 照片底部水印 */
.photo-watermark {
    position: absolute;
    bottom: 20px;
    right: 38.2%; /* 黄金分割点位置 */
    transform: translateX(50%); /* 使文字中心点位于黄金分割点 */
    font-family: 'Alex Brush', cursive;
    font-size: 30px;
    color: #ff6b95;
    white-space: nowrap;
    opacity: 0.9;
    text-shadow: 0px 0px 1px rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
}

/* 心形图标 */
.watermark-heart {
    color: #ff3366;
    font-size: 24px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px;
    line-height: 1;
    position: relative;
    top: -2px;
}

/* 水印心跳动画 */
@keyframes heartbeat {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.15); }
}

.photo-viewer-close {
    position: absolute;
    top: 20px;
    right: 20px;
    color: white;
    font-size: 40px;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s, transform 0.2s;
    z-index: 2001;
}

.photo-viewer-close:hover {
    opacity: 1;
}

/* 首页签名样式 */
.intro-signature {
    font-family: 'Alex Brush', cursive;
    font-size: 24px;
    color: white;
    white-space: nowrap;
    opacity: 0.9;
    text-shadow: 0 0 10px rgba(5, 1, 45, 0.8), 0 0 20px rgba(5, 1, 45, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
    position: absolute;
    top: calc(100% + 10px);
    left: 61.8%; /* 黄金分割点 */
    transform: translateX(-50%);
    animation: glow 2s ease-in-out infinite alternate;
}

.signature-heart {
    color: white;
    font-size: 20px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 3px;
    line-height: 1;
    position: relative;
    top: -2px;
}

.floating-star-1 { filter: hue-rotate(0deg); }
.floating-star-2 { filter: hue-rotate(60deg); }
.floating-star-3 { filter: hue-rotate(120deg); }
.floating-star-4 { filter: hue-rotate(180deg); }
.video-overlay#tiktokOverlay::after { content: "抖音世界"; } .video-overlay#videoOverlay::after { content: "520 vlog"; }

/* moments.css 文件将包含照片墙、图片查看器、modal、photo-wall、photo-item、photo-viewer、photo-frame、photo-watermark、photo-viewer-close等相关样式。 */
