/* Set full page background */
html, body {
    background-color: #41b8ac !important;
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
}

/* Core container and content styling */
#container,
.dialog,
.content,
#content,
.form-container,
.panel,
.ticket-form,
.ticket,
div#page-content {
    background-color: #a8e0da !important;
    border-radius: 10px;
    padding: 30px;
    margin: 40px auto;
    max-width: 900px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
}

/* Adjust only the content box inside the container */
.main-content,
.thread-body {
    background-color: #a8e0da !important;
    border-radius: 10px;
    padding: 5px 30px 30px 30px; /* Reduced top padding further */
    margin-top: -10px !important; /* Slight negative margin to pull up */
}

/* Form layout fix */
.form-group,
form .row,
form .form-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 15px;
}

/* Labels styling */
form label {
    font-weight: bold;
    color: #003638;
    margin-bottom: 6px;
}

/* Form field styling */
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="password"],
form textarea,
form select {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 6px;
    box-sizing: border-box;
    margin-bottom: 15px;
    background-color: white;
    font-size: 14px;
}

/* Headings inside content areas */
.content h1,
.content h2,
.content h3 {
    color: #003638;
    font-weight: bold;
    margin-bottom: 20px;
}

/* Buttons styling */
form input[type="submit"],
form input[type="button"],
form button,
button {
    background-color: #19747E !important;
    color: white !important;
    padding: 10px 20px;
    border: none;
    border-radius: 6px;
    font-size: 16px;
    cursor: pointer;
    margin-right: 10px;
}

form input[type="submit"]:hover,
form input[type="button"]:hover,
form button:hover {
    background-color: #145E66 !important;
}

/* Drop file input (ticket attachment) */
div[class*="dropzone"],
input[type="file"] {
    background-color: #ffffff;
    border: 2px dashed #ccc;
    padding: 20px;
    width: 100%;
    text-align: center;
    border-radius: 6px;
    margin-bottom: 15px;
    color: #003638;
    font-style: italic;
}

/* Select2 dropdown or custom selects if used */
.select2-container--default .select2-selection--single {
    background-color: white;
    border: 1px solid #ccc;
    border-radius: 6px;
    height: 40px;
    padding: 5px 10px;
}

/* Ticket form alignment & spacing */
.ticket-form,
#content {
    display: block;
    margin: 0 auto;
    padding: 20px;
    max-width: 900px;
}

/* Fix spacing on action buttons */
.ticket-form .btn,
#content .btn {
    margin-top: 10px;
}

/* Responsive tweak for mobile */
@media screen and (max-width: 768px) {
    #container,
    .dialog,
    .content,
    .ticket-form,
    .form-container {
        padding: 15px;
        margin: 20px 10px;
    }

    form input,
    form select,
    form textarea {
        font-size: 16px;
    }
}

/* ----------------------------- */
/* Additional Styling for Image 3 */
/* ----------------------------- */

/* Basic Ticket Information and Ticket Details */
.basic-ticket-info,
.ticket-details {
    background-color: #a8e0da !important;
    border-radius: 8px;
    padding: 20px;
}

/* Posted Reply and Post a Reply */
.posted-reply,
.post-reply {
    background-color: #f9ebe5 !important;
    border-radius: 8px;
    padding: 20px;
}
