/* Optional: Define custom theme colors if you don't want default Bootstrap blue */
:root {
    /* Example: Override Bootstrap primary color */
    /* --bs-primary: #0056b3; */
    /* --bs-primary-rgb: 0, 86, 179; */
    /* Add other custom variables if needed */
    --custom-primary: #0056b3; /* Keeping your original color for reference */
}

body {
    background-color: #f8f9fa; /* Light background */
}

/* Logo Styling */
.form-logo {
    max-width: 100%; /* Adjust as needed */
    height: auto;
}

/* Form Title */
.form-title {
    color: var(--custom-primary); /* Use your custom color */
    font-weight: 300; /* Lighter font weight */
    font-size: 1.75rem; /* Adjust size */
}

/* Custom Section Title */
.form-section-title {
    font-size: 1.3em; /* Slightly smaller */
    color: var(--custom-primary);
    border-bottom: 1px solid #dee2e6;
    padding-bottom: 0.4em;
    margin-bottom: 1.2em;
    margin-top: 1.5em; /* Add some top margin */
    font-weight: 400;
}


/* Registration ID Display Area */
.reg-id-display-area {
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    padding: 0.8rem 1rem;
    border-radius: 0.375rem; /* Match Bootstrap input radius */
}
.reg-id-display-area label {
    font-weight: 500;
    margin-bottom: 0.3rem;
    font-size: 0.9em;
    color: #495057;
}
.reg-id-value .badge { /* Style the provisional ID badge */
     font-size: 1.1em;
     padding: 0.4em 0.6em;
     font-family: monospace;
     /* background-color: #6c757d; Default secondary */
}
/* Add specific badge colors if needed */
.reg-id-value .badge.bg-primary { background-color: var(--custom-primary) !important; }
.reg-id-value .badge.bg-danger { background-color: var(--bs-danger) !important; }

.id-warning {
    margin-top: 0.3rem;
    color: #6c757d;
}

/* Member Block Styling */
.member-block-bs {
    border: 1px solid #e9ecef;
    padding: 1.25rem;
    margin-bottom: 1rem;
    border-radius: 0.375rem;
    background-color: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.member-block-bs h4 {
    margin-top: 0;
    color: var(--custom-primary);
    font-size: 1.15em;
    border-bottom: 1px dashed #dee2e6;
    padding-bottom: 0.5em;
    margin-bottom: 1em;
}

/* Fee Summary Customization */
.fee-summary {
    margin-top: 1.5em;
}
.fee-summary .alert-heading {
     color: var(--custom-primary);
}

/* Modal Customization */
.modal-header-custom {
     background-color: var(--custom-primary); /* Use your custom color */
     color: white;
}
.modal-details-bs p { /* Style details inside Bootstrap modal */
    margin-bottom: 0.6rem;
    font-size: 0.95em;
}
.modal-details-bs strong {
     color: #343a40; /* Darker text for labels */
     min-width: 150px; /* Align values */
     display: inline-block;
     margin-right: 5px;
}

/* Ensure invalid feedback is noticeable */
.invalid-feedback {
    font-weight: 500;
}

/* Currency Symbol Adjustment */
.currency-symbol {
    font-weight: 500;
    color: #495057;
    font-size: 0.9em;
}

/* Toast Container Positioning */
.toast-container {
    z-index: 1100; /* Ensure it's above modals if necessary */
}

/* Optional: Adjust toast body icon alignment */
.toast-body .bi {
    vertical-align: middle; /* Align icon nicely with text */
    margin-bottom: 2px; /* Fine-tune alignment */
    font-size: 1.2em; /* Slightly larger icon */
}

/* Make validation icons work nicely with selects */
/* Bootstrap 5.3+ handles this better, but keep if needed */
/* select.form-select.is-invalid, select.form-select.is-valid {
    background-position: right 0.75rem center;
} */

/* Remove spinner from number inputs (optional) */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=number] {
  -moz-appearance: textfield; /* Firefox */
}