/* Global Resets and Base Styles */
body {
    font-family: 'Poppins', 'Roboto', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    margin: 0;
    padding: 0; /* Remove body padding, manage spacing with containers */
    background-color: #f8f9fa; /* Lighter background for a cleaner look */
    color: #343a40; /* Darker grey for better readability */
    line-height: 1.6;
}

.container {
    width: 90%; /* Use percentage for better responsiveness */
    max-width: 800px; /* Max width for larger screens */
    margin: 0 auto; /* Center the container */
    padding: 20px;
}

/* Header Styles */
.site-header {
    background-color: #343a40; /* Dark header background */
    color: #ffffff;
    padding: 25px 0;
    text-align: center;
    margin-bottom: 30px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.site-header h1 {
    margin: 0;
    font-size: 2.2em; /* Larger site title */
    font-weight: 700; /* Bolder title */
    letter-spacing: 1px;
}

.site-header .tagline {
    margin: 5px 0 0;
    font-size: 1em;
    font-weight: 400;
    color: #e9ecef; /* Lighter tagline color */
}

/* Main Content Area */
.main-content {
    background-color: #ffffff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
    margin-bottom: 30px;
}

/* Form Styling */
.input-group {
    margin-bottom: 25px;
}

.input-group label {
    display: block;
    margin-bottom: 8px;
    color: #495057; /* Slightly lighter label color */
    font-weight: 600; /* Bolder labels */
    font-size: 0.95em;
}

.input-group select,
.input-group input[type="text"] {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ced4da;
    border-radius: 5px;
    box-sizing: border-box;
    font-size: 1em;
    font-family: 'Poppins', 'Roboto', sans-serif;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.input-group select:focus,
.input-group input[type="text"]:focus {
    border-color: #007bff; /* Primary accent color */
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.conversion-row {
    display: flex;
    align-items: flex-end;
    gap: 20px; /* Increased gap */
    margin-bottom: 30px;
}

.conversion-row .input-group {
    flex: 1;
    margin-bottom: 0;
}

.conversion-row .value-input {
    flex-grow: 1.5;
}

.equals {
    font-size: 1.8em; /* Larger 'TO' text */
    font-weight: 700; /* Bolder 'TO' */
    padding-bottom: 12px;
    color: #007bff; /* Accent color for 'TO' */
    margin: 0 5px; /* Add some horizontal margin */
}

.convert-button {
    background-color: #007bff; /* Primary accent color */
    color: white;
    padding: 14px 25px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1.15em;
    font-weight: 600;
    width: 100%;
    transition: background-color 0.2s ease, transform 0.1s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.convert-button:hover {
    background-color: #0056b3; /* Darker shade on hover */
}

.convert-button:active {
    transform: translateY(1px);
}

/* Result Area Styling */
#resultArea {
    margin-top: 35px;
    padding: 25px;
    background-color: #eef2f7; /* Softer background for results */
    border-radius: 5px;
    border: 1px solid #d1d9e6;
}

#resultArea h2 {
    margin-top: 0;
    margin-bottom: 15px;
    color: #007bff;
    font-size: 1.5em;
    font-weight: 600;
}

#resultArea h3 {
    margin-top: 20px;
    margin-bottom: 8px;
    color: #343a40;
    font-size: 1.1em;
    font-weight: 600;
}

#conversionResult {
    font-size: 1.8em; /* Larger result text */
    font-weight: 700;
    color: #28a745; /* Green for success */
    word-wrap: break-word;
    padding: 10px;
    background-color: #fff;
    border-radius: 4px;
    border-left: 5px solid #28a745;
}

#conversionNotes {
    font-size: 0.9em;
    color: #495057;
    white-space: pre-wrap;
    word-wrap: break-word;
    background-color: #fff;
    padding: 15px;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
    margin-top: 10px;
    line-height: 1.5;
}

/* Footer Styles */
.site-footer {
    background-color: #343a40;
    color: #adb5bd; /* Lighter grey for footer text */
    padding: 20px 0;
    text-align: center;
    margin-top: 40px;
    font-size: 0.9em;
}

.site-footer p {
    margin: 5px 0;
}

/* Why Choose Us Section (Previously Privacy Policy Section) */
.why-choose-us-section { /* Renamed from .privacy-policy-section */
    background-color: #f1f3f5; 
    padding: 25px;
    margin-top: 30px; 
    margin-bottom: 30px; 
    border-radius: 8px;
    text-align: center; 
}

.why-choose-us-section h2 {
    font-size: 1.6em; /* Slightly larger for this section title */
    color: #007bff; /* Accent color for the heading */
    margin-top: 0;
    margin-bottom: 20px;
}

.why-choose-us-section p {
    font-size: 0.95em; /* Slightly larger paragraph text */
    color: #343a40; /* Darker text for better readability */
    line-height: 1.7;
    max-width: 700px; /* Adjust max-width as needed */
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 15px;
    text-align: left; /* Left align paragraph text for readability */
}

.why-choose-us-section p strong {
    color: #0056b3; /* Emphasize strong text */
}


/* Responsive Adjustments */
@media (max-width: 768px) {
    .site-header h1 {
        font-size: 1.8em;
    }
    .main-content {
        padding: 20px;
    }
}

@media (max-width: 600px) {
    .conversion-row {
        flex-direction: column;
        align-items: center; /* Center align items when stacked */
        gap: 15px;
    }

    .conversion-row .input-group {
        width: 100%; /* Make each input group take full width */
        max-width: 350px; /* Optional: constrain max width for very wide small screens */
        text-align: center; /* Center text within the input group */
    }

    .conversion-row .input-group label {
        text-align: left; /* Keep labels left-aligned for readability */
    }

    .equals {
        text-align: center;
        padding-bottom: 0;
        margin: 10px 0;
        font-size: 1.5em;
    }

    .category-selector .input-group select,
    .conversion-row .input-group select,
    .conversion-row .input-group input[type="text"] {
        width: 100%; /* Ensure inputs/selects take full width of their parent */
    }

    .category-selector {
        display: flex;
        flex-direction: column;
        align-items: center; /* Center the category selector group */
        margin-bottom: 20px;
    }

    .category-selector .input-group {
        width: 100%;
        max-width: 350px; /* Optional: constrain max width */
        text-align: center;
    }

    .category-selector label {
        text-align: left; /* Keep label left-aligned */
    }

    .container {
        padding: 15px;
    }
    .site-header h1 {
        font-size: 1.6em;
    }
    .site-header .tagline {
        font-size: 0.9em;
    }
    .convert-button {
        font-size: 1.1em;
        padding: 12px 20px;
        max-width: 350px; /* Optional: constrain max width */
        margin-left: auto; /* Center button if it's not full width */
        margin-right: auto; /* Center button if it's not full width */
    }
    #conversionResult {
        font-size: 1.5em;
    }
}