/* General Styles */
.custom-diploma-form {
    width: 100%;    
    margin: auto;
    background: #fff;
    border: 1px solid #ddd;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1); /* Soft shadow for depth */
}

.custom-fieldset {
    border: 1px solid #ccc;
    border-radius: 8px;
    background: #f9f9f9;
    padding: 20px;
}

.custom-legend {
    font-size: 1.4em;
    font-weight: bold;
    color: #333;
}

.custom-form-group {
    /*margin-bottom: 15px; /* Reduced margin between form groups */
}

.custom-label {
    font-weight: bold;
	margin-bottom:8px;
    color: #333;
}

.custom-row {
    display: flex;
    flex-wrap: wrap;
    
}

.custom-col-50,
.custom-col-33 {	
    padding: 10px;
    box-sizing: border-box;
}

/* Columns Styling */
.custom-col-50 {
    flex: 0 0 48%;
}

.custom-col-33 {
    flex: 0 0 31%;
}

/* Input, Select, and Textarea fields */
.custom-input,
.custom-select,
.custom-textarea {
    width: 100%;
    padding: 10px; /* Reduced padding to bring the fields closer to the labels */
    border: 1px solid #ccc;
    border-radius: 8px;
    font-size: 14px;
    background: #fff !important;
    box-sizing: border-box;
    transition: border-color 0.3s ease;
}

.custom-input:focus,
.custom-select:focus,
.custom-textarea:focus {
    border-color: #0073aa;
    outline: none;
    box-shadow: 0 0 5px rgba(0, 115, 170, 0.3);
}

.custom-heading {
    font-size: 1.3em;
    margin: 25px 0 10px;
    color: #333;
}

.custom-button {
    background: #0073aa;
    color: #fff;
    border: none;
    padding: 12px 25px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
    transition: background 0.3s ease;
    text-align: center;
mqrgin-top:10px;
}

.custom-button:hover {
    background: #005b8a;
}

.custom-required {
    color: red;
}

.form-response {
    margin-top: 20px;
    font-weight: bold;
}

.success {
    color: green;
}

.error {
    color: red;
}

/* Submit Button Disabled */
.custom-button:disabled {
    background-color: #ccc;
    cursor: not-allowed;
}

/* File Input Fields */
.file-input {
    padding: 10px;
    background: #f9f9f9;
    border: 1px solid #ccc;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.3s ease;
}

.file-input:hover {
    background: #f1f1f1;
}

.file-description {
    display: block;
    margin-top: 5px;
    font-size: 13px;
    color: #666;
}

/* Mobile Responsiveness */
@media screen and (max-width: 768px) {
    .custom-col-50,
    .custom-col-33 {
        flex: 0 0 100%;
    }
    .custom-row {
        gap: 10px;
    }
}

/* Larger screens (desktop) */
@media screen and (min-width: 1024px) {
    .custom-col-50 {
        flex: 0 0 48%;
    }
    .custom-col-33 {
        flex: 0 0 31%;
    }
}
