body {
    font-family: 'Arial', sans-serif;
    background-color: #f5c6d6; /* Darker and brighter pink */
    color: #a23e48; /* Complementary darker pink for text */
    margin: 0;
    padding: 0;
}

.container {
    text-align: center;
    padding: 20px;
}

header {
    background-color: #f2a1b8; /* Updated pink for header */
    border: 2px solid #a23e48; /* Complementary border */
    padding: 10px;
    border-radius: 10px;
}

header h1 {
    margin: 0;
    font-size: 2.5em;
}

.memory {
    margin: 20px auto;
    padding: 20px;
    border: 2px solid #a23e48; /* Updated border color */
    border-radius: 10px;
    background-color: #f9d2e0; /* Softer pink for memory background */
    max-width: 600px;
}

.memory img {
    max-width: 100%;
    border-radius: 10px;
}

footer {
    margin-top: 20px;
    font-size: 0.9em;
    border-top: 2px solid #a23e48; /* Updated footer border */
    color: #a23e48; /* Updated footer text color */
}

#password-form {
    margin: 20px auto;
    padding: 20px;
    border: 2px solid #a23e48; /* Updated border color */
    border-radius: 10px;
    background-color: #f9d2e0; /* Softer pink for form background */
    max-width: 400px;
    font-family: 'Georgia', serif; /* Match the font style of the content */
    font-size: 1.2em; /* Adjust font size for readability */
    line-height: 1.6; /* Improve text spacing */
}

#password-form input {
    max-width: 80%; /* Ensure it doesn't exceed the container width */
    padding: 10px;
    margin: 10px 0;
    border: 1px solid #a23e48; /* Complementary darker pink for borders */
    border-radius: 20px; /* Softer rounded edges for a romantic feel */
    background-color: #fce4ec; /* Light pink background for a soft touch */
    font-family: 'Georgia', serif; /* Romantic font style */
    font-size: 1.1em; /* Slightly larger font for elegance */
    color: #a23e48; /* Matching text color */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
    transition: all 0.3s ease;
}

#password-form input:focus {
    outline: none;
    border-color: #822c38; /* Darker pink for focus */
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15); /* Enhanced shadow on focus */
}

#password-form button {
    background-color: #a23e48; /* Darker pink for buttons */
    color: white;
    border: 2px solid #a23e48; /* Matching border */
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
}

#password-form button:hover {
    background-color: #822c38; /* Slightly darker pink for hover effect */
}

#memory-message {
    font-family: 'Georgia', serif;
    font-size: 1.2em;
    line-height: 1.6;
    color: #4a4a4a;
    text-align: center;
    margin: 20px;
}

.next-component {
    font-family: 'Georgia', serif;
    font-size: 1.5em;
    line-height: 1.8;
    color: #333;
    text-align: center;
    margin: 40px auto;
    padding: 20px;
    border: 2px solid #a23e48; /* Updated border color */
    border-radius: 10px;
    background-color: #f9d2e0; /* Softer pink for background */
    max-width: 600px;
}

#next-btn {
    background-color: #a23e48; /* Darker pink for buttons */
    color: white;
    border: 2px solid #a23e48; /* Matching border */
    padding: 15px 30px;
    border-radius: 50px; /* Rounded button for a softer look */
    font-size: 1.2em;
    font-family: 'Georgia', serif;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    display: block; /* Ensure the button is a block element */
    margin: 20px auto; /* Center the button horizontally */
    text-align: center; /* Center the text inside the button */
}

#next-btn:hover {
    background-color: #822c38; /* Slightly darker pink for hover effect */
    transform: scale(1.05); /* Subtle zoom effect */
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15);
}

/* Responsive styles for iPhone */
@media screen and (max-width: 480px) {
    body {
        font-size: 1em; /* Adjust base font size for smaller screens */
        padding: 10px; /* Add padding to avoid content touching screen edges */
    }

    .container {
        padding: 10px; /* Reduce padding for smaller screens */
    }

    header h1 {
        font-size: 2em; /* Adjust header size for better fit */
    }

    .memory {
        padding: 15px; /* Reduce padding for memory sections */
        max-width: 100%; /* Ensure memory sections fit within screen */
    }

    #password-form {
        padding: 15px; /* Adjust padding for smaller screens */
        max-width: 90%; /* Ensure form fits within screen */
    }

    #password-form input {
        width: 100%; /* Make input boxes full width */
        font-size: 1em; /* Adjust font size for readability */
    }

    #password-form button {
        padding: 10px; /* Adjust button padding */
        font-size: 1em; /* Adjust button font size */
    }

    #next-btn {
        padding: 10px 20px; /* Adjust button padding */
        font-size: 1em; /* Adjust button font size */
    }
}