
        @font-face {
            font-family: 'Handwritten';
            src: url('../字体/GuoFengMaChaoGangBiShouXieTi-2.ttf');
        }
        @font-face {
            font-family: 'EliteFont';
            src: url('../字体/GuoFengMaChaoGangBiShouXieTi-2.ttf');
        }
        @font-face {
            font-family: 'StudentFont';
            src: url('../字体/GuoFengMaChaoGangBiShouXieTi-2.ttf');
        }
        /* 风铃图标 - 顶部悬挂摇晃 */
        .secret-trigger-icon {
            position: fixed;
            top: 40%;
            left: 50%;
            width: 120px;
            height: 180px;
            background: url('../ICON/风铃.png') center/contain no-repeat;
            cursor: pointer;
            z-index: 1000;
            display: none;
            transform-origin: top center;
            animation: swing 3s ease-in-out infinite;
            filter: drop-shadow(0 5px 15px rgba(0,0,0,0.2));
        }
        @keyframes swing {
            0%, 100% { 
                transform: translateX(-50%) rotate(0deg); 
                filter: drop-shadow(0 5px 15px rgba(0,0,0,0.2)) drop-shadow(0 0 5px rgba(255,255,255,0.3));
            }
            25% { 
                transform: translateX(-50%) rotate(10deg); 
                filter: drop-shadow(0 5px 15px rgba(0,0,0,0.2)) drop-shadow(0 0 15px rgba(255,255,255,0.8));
            }
            75% { 
                transform: translateX(-50%) rotate(-10deg); 
                filter: drop-shadow(0 5px 15px rgba(0,0,0,0.2)) drop-shadow(0 0 15px rgba(255,255,255,0.8));
            }
        }

        /* 模态框 */
        .puzzle-modal {
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            background: rgba(0, 0, 0, 0.6);
            backdrop-filter: blur(5px);
            -webkit-backdrop-filter: blur(5px);
            display: none;
            justify-content: center;
            align-items: center;
            z-index: 2000;
            flex-direction: column;
            touch-action: none;
        }
        .puzzle-modal.show { display: flex; }

        /* 拼图区域 */
        .puzzle-container {
            position: relative;
            width: 320px;
            height: 420px;
            background: rgba(255,255,255,0.05);
            border: 2px dashed rgba(255,255,255,0.2);
            margin-bottom: 20px;
            overflow: visible;
        }
        
        /* 拼图碎片 */
        .puzzle-piece {
            position: absolute;
            cursor: grab;
            filter: drop-shadow(2px 2px 5px rgba(0,0,0,0.5));
            transition: transform 0.1s, filter 0.3s;
            user-select: none;
            touch-action: none;
            z-index: 10;
        }
        .puzzle-piece:active { cursor: grabbing; transform: scale(1.05); z-index: 100; }
        
        /* 拼对时的闪烁效果 */
        .flash-edge {
            animation: flash 0.6s ease-out;
        }
        @keyframes flash {
            0% { filter: drop-shadow(0 0 0px #fff) brightness(1); }
            50% { filter: drop-shadow(0 0 20px #fff) brightness(1.5); }
            100% { filter: drop-shadow(0 0 0px #fff) brightness(1); }
        }

        .puzzle-piece.snapped { cursor: default; filter: none; z-index: 1; pointer-events: none; }

        /* 完整纸条 */
        .complete-paper {
            width: 320px;
            height: 450px;
            background: #fffaf0;
            box-shadow: 0 5px 25px rgba(0,0,0,0.5);
            display: none;
            flex-direction: column;
            padding: 0;
            box-sizing: border-box;
            position: relative;
            transform: rotate(-1deg);
            background-size: cover;
            background-position: center;
        }
        .complete-paper.show { display: flex; animation: paperIn 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
        @keyframes paperIn {
            from { opacity: 0; transform: scale(0.5) rotate(-15deg); }
            to { opacity: 1; transform: scale(1) rotate(-1deg); }
        }
        
        .paper-text {
            position: absolute;
            top: 25px;
            left: 10px;
            width: 300px;
            height: 400px;
            font-family: 'Handwritten', 'Kaiti', serif;
            font-size: 24px;
            line-height: 1.3;
            white-space: pre-wrap;
            pointer-events: none;
            transform-origin: center center;
        }

        /* 按钮 */
        .action-btns {
            position: absolute;
            bottom: 15px;
            right: 15px;
            display: flex;
            justify-content: flex-end;
            gap: 15px;
            z-index: 10;
        }
        .action-btns button {
            background: transparent;
            border: none;
            font-family: 'SimHei', 'Microsoft YaHei', sans-serif;
            font-size: 13px;
            cursor: pointer;
            position: relative;
            padding: 5px 10px;
            transition: transform 0.2s;
            color: #333;
            font-weight: normal;
        }
        .action-btns button:active { transform: scale(0.9); }

        /* 销毁动画 */
        .destroy-anim {
            animation: dissolve 1.8s forwards ease-in-out !important;
            pointer-events: none;
        }
        @keyframes dissolve {
            0% { opacity: 1; filter: blur(0) brightness(1); transform: scale(1) rotate(-1deg); }
            30% { opacity: 0.9; filter: blur(2px) brightness(1.2); transform: scale(1.05) rotate(2deg); }
            100% { opacity: 0; filter: blur(30px) brightness(2); transform: scale(1.4) rotate(10deg); }
        }
    