    /* Scrapbook Section Styles */
    .kyf-scrapbook-wall {
        padding: 40px 20px;
        background: transparent;
        display: flex;
        justify-content: center;
    }

    .kyf-scrapbook-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        max-width: 60%;
        position: relative;
    }

    .kyf-note {
        width: 250px;
        height: 260px;
        padding: 30px 20px;
        margin: -35px -20px;
        background-color: var(--bg);
        transform: rotate(var(--tilt)) translateY(var(--y, 0)) translateX(var(--x, 0));
        position: relative;
        cursor: pointer;
        transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
        box-shadow: 2px 5px 15px rgba(0,0,0,0.3);
    }

    .kyf-note::before {
        content: "";
        position: absolute;
        inset: -20px;
        z-index: -2;
    }

    .kyf-note::after {
        content: "";
        position: absolute;
        bottom: 5px;
        right: 8px;
        width: 80%;
        height: 20px;
        background: rgb(0 0 0 / 12%);
        filter: blur(10px);
        transform: rotate(3deg) skewX(15deg);
        z-index: -1;
    }

    .kyf-note:hover {
        z-index: 100;
        transform: scale(1.1) rotate(0deg) !important;
        box-shadow: 20px 30px 50px rgba(0,0,0,0.5);
        transition-delay: 0.05s;
    }

    .kyf-pin {
        position: absolute;
        top: 10px;
        left: 50%;
        transform: translateX(-50%);
        width: 18px;
        height: 18px;
        background: radial-gradient(circle at 30% 30%, #ff4d4d, #990000);
        border-radius: 50%;
        z-index: 20;
        box-shadow: 2px 4px 5px rgba(0,0,0,0.4);
    }
    .kyf-pin::after {
        content: "";
        position: absolute;
        top: 18px;
        left: 8px;
        width: 2px;
        height: 8px;
        background: #aaa;
    }

    .kyf-tape-frost {
        position: absolute;
        top: -15px;
        left: 50%;
        transform: translateX(-50%) rotate(-1deg);
        width: 90px;
        height: 32px;
        background: rgb(165 165 165 / 20%);
        backdrop-filter: blur(2px);
        z-index: 10;
        -webkit-mask-image: linear-gradient(to right, transparent 2%, black 8%, black 92%, transparent 98%);
        box-shadow: 0 1px 2px rgba(0,0,0,0.1);
    }

    .kyf-note-inner { font-family: 'Arial', sans-serif; }
    .kyf-month { font-size: 1rem; font-weight: 800; text-transform: uppercase; color: #ff5e00; }
    .kyf-day { font-size: 5rem; font-weight: 900; line-height: 0.8; margin: 5px 0; color: #1a1a1a; }
    .kyf-desc { font-weight: 700; font-size: 0.9rem; color: #333; line-height: 1.2; }
    .kyf-handwritten { font-family: 'Brush Script MT', cursive; font-size: 1.3rem; color: #444; }

    @media (max-width: 768px) {
        .kyf-scrapbook-container {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 0;
            padding-bottom: 60px;
        }
        .kyf-note {
            width: 160px;
            height: 170px;
            margin: -15px -10px;
        }
        .kyf-day { font-size: 3rem; }
        .kyf-desc { font-size: 0.7rem; }
        .kyf-hide-mobile { display: none; }
    }

    .kyf-extra-note { width: 180px; height: 180px; padding: 20px; z-index: 2; pointer-events: none; cursor: default; }
    .kyf-badge-spin {
        position: absolute;
        bottom: -15px;
        right: -10px;
        width: 65px;
        height: 65px;
        background: #ff5e00;
        border-radius: 50%;
        color: white;
        font-size: 8px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        border: 2px dashed #fff;
        animation: spin 10s linear infinite;
    }
    @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }