/* Base Body Styling */
        body {
            font-family: 'Inter', sans-serif; /* Modern sans-serif font */
            background-color: #fce4ec; /* Very light pink background */
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;
            margin: 0;
            padding: 20px; /* Padding for smaller screens */
            box-sizing: border-box;
        }

        /* Main Contact Book Container */
        .contact-book-container {
            background-color: #ffffff; /* Pure white container background */
            border-radius: 1.5rem; /* Rounded corners */
            padding: 2rem;
            box-shadow: 0 15px 30px rgba(255, 105, 180, 0.2); /* Soft pink shadow */
            width: 100%;
            max-width: 500px; /* Max width for a comfortable layout */
            display: flex;
            flex-direction: column;
            gap: 1.5rem; /* Spacing between sections */
        }

        /* Title Styling */
        h1 {
            text-align: center;
            font-size: 2.5rem; /* Larger title font */
            font-weight: bold;
            color: #e91e63; /* Deep pink for the title */
            margin-bottom: 1rem;
        }

        /* Form Section Styling */
        .contact-form {
            display: flex;
            flex-direction: column;
            gap: 1rem; /* Spacing between form elements */
        }

        /* Input Field Styling */
        .contact-form input[type="text"],
        .contact-form input[type="tel"],
        .contact-form input[type="email"] {
            padding: 0.75rem 1rem;
            border: 1px solid #f8bbd0; /* Light pink border */
            border-radius: 0.75rem; /* Rounded input fields */
            font-size: 1rem;
            color: #333;
            transition: border-color 0.2s ease, box-shadow 0.2s ease;
        }

        .contact-form input[type="text"]:focus,
        .contact-form input[type="tel"]:focus,
        .contact-form input[type="email"]:focus {
            outline: none;
            border-color: #e91e63; /* Deep pink border on focus */
            box-shadow: 0 0 0 3px rgba(233, 30, 99, 0.2); /* Soft pink glow on focus */
        }

        /* Button Styling (Add/Update) */
        .contact-form button {
            background-color: #ff4081; /* Vibrant pink button */
            color: #ffffff;
            padding: 0.75rem 1.5rem;
            border-radius: 0.75rem;
            font-size: 1.1rem;
            font-weight: 600;
            cursor: pointer;
            transition: background-color 0.2s ease, transform 0.1s ease;
            box-shadow: 0 4px 6px rgba(255, 64, 129, 0.3); /* Subtle button shadow */
        }

        .contact-form button:hover {
            background-color: #e91e63; /* Darker pink on hover */
            transform: translateY(-2px); /* Slight lift effect */
        }

        .contact-form button:active {
            transform: translateY(0); /* Reset lift on click */
            box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1); /* Inner shadow for pressed effect */
        }

        /* Contact List Styling */
        .contact-list-container {
            margin-top: 1rem;
        }

        #contactList {
            list-style: none; /* Remove default list bullets */
            padding: 0;
            margin: 0;
            display: flex;
            flex-direction: column;
            gap: 0.75rem; /* Spacing between list items */
        }

        .contact-item {
            background-color: #fffafa; /* Off-white for contact items */
            padding: 1rem 1.25rem;
            border-radius: 0.75rem;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); /* Very subtle shadow */
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap; /* Allow wrapping on smaller screens */
            gap: 0.5rem; /* Gap between details and actions */
            border: 1px solid #ffebee; /* Very light pink border */
        }

        .contact-details {
            flex-grow: 1; /* Allows details to take available space */
            color: #4a4a4a; /* Dark grey text for details */
        }

        .contact-details p {
            margin: 0;
            line-height: 1.4;
        }

        .contact-details p strong {
            color: #e91e63; /* Highlight name in deep pink */
            font-size: 1.1rem;
        }

        .contact-actions {
            display: flex;
            gap: 0.5rem; /* Spacing between action buttons */
        }

        .contact-actions button {
            padding: 0.5rem 0.75rem;
            border-radius: 0.5rem;
            font-size: 0.9rem;
            font-weight: 500;
            cursor: pointer;
            transition: background-color 0.2s ease;
            box-shadow: none; /* Remove shadow for smaller action buttons */
        }

        .contact-actions .edit-btn {
            background-color: #81c784; /* Soft green for edit */
            color: #ffffff;
        }

        .contact-actions .edit-btn:hover {
            background-color: #66bb6a; /* Darker green on hover */
        }

        .contact-actions .delete-btn {
            background-color: #ef5350; /* Soft red for delete */
            color: #ffffff;
        }

        .contact-actions .delete-btn:hover {
            background-color: #e53935; /* Darker red on hover */
        }

        /* Message Box Styling */
        #messageBox {
            background-color: #fff3e0; /* Light orange for warnings */
            color: #ff9800; /* Dark orange text */
            padding: 1rem;
            border-radius: 0.75rem;
            margin-bottom: 1rem;
            text-align: center;
            font-weight: 500;
            display: none; /* Hidden by default */
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        /* Responsive Adjustments */
        @media (max-width: 600px) {
            .contact-book-container {
                padding: 1.5rem;
                border-radius: 1rem;
            }
            h1 {
                font-size: 2rem;
            }
            .contact-item {
                flex-direction: column;
                align-items: flex-start;
            }
            .contact-actions {
                width: 100%;
                justify-content: flex-end; /* Align action buttons to the right */
                margin-top: 0.5rem;
            }
        } 