body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 20px;
    background-color: #f4f4f4;
    color: #333;
}

h1 {
    color: #2c3e50;
    text-align: center;
    margin: 20px 0 30px;
    font-size: 2em;
}

p {
    margin: 15px 0;
}

ul {
    list-style-type: none;
    padding: 0;
    margin: 0 auto;
    max-width: 600px;
}

li {
    margin: 10px 0;
}

a {
    color: #2980b9;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

.btn, button, input[type="submit"] {
    display: inline-block;
    padding: 10px 20px;
    background-color: #3498db;
    color: white;
    border-radius: 5px;
    text-align: center;
    text-decoration: none;
    border: none;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s;
}

.btn:hover, button:hover, input[type="submit"]:hover {
    background-color: #2980b9;
}

.btn-edit {
    background-color: #28a745;
}

.btn-edit:hover {
    background-color: #218838;
}

.btn-hide {
    background-color: #6c757d;
}

.btn-hide:hover {
    background-color: #5a6268;
}

.btn-delete {
    background-color: #dc3545;
}

.btn-delete:hover {
    background-color: #c82333;
}

.btn-join {
    background-color: #007bff;
}

.btn-join:hover {
    background-color: #0056b3;
}

.btn-back {
    background-color: #007bff;
}

.btn-back:hover {
    background-color: #0056b3;
}

form {
    margin: 20px auto;
    max-width: 600px;
    background-color: white;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

label {
    display: block;
    margin: 10px 0 5px;
    font-weight: bold;
    color: #2c3e50;
}

input[type="text"],
input[type="number"],
textarea {
    width: 100%;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 16px;
}

textarea {
    resize: vertical;
    height: 100px;
}

input[type="radio"] {
    margin: 0 5px 0 10px;
}

.intro-text {
    text-align: center;
    max-width: 800px;
    margin: 20px auto 30px;
    color: #555;
    line-height: 1.6;
    font-size: 16px;
}

.error {
    color: red;
    font-weight: bold;
}

.success {
    color: green;
    font-weight: bold;
}

@media (max-width: 600px) {
    form {
        padding: 15px;
    }

    h1 {
        font-size: 1.5em;
    }

    .btn, button, input[type="submit"] {
        padding: 8px 16px;
        font-size: 14px;
    }
}

.action-list li {
    margin-bottom: 30px;
}

/* Voting buttons */
.vote-btn {
    margin: 5px;
    padding: 8px 16px;
    cursor: pointer;
    border: none;
    border-radius: 4px;
    font-size: 14px;
}

.btn.btn-join.vote-btn.vote-yes {
    background-color: #28a745; /* Green */
    color: white;
}

.btn.btn-join.vote-btn.vote-no {
    background-color: #dc3545; /* Red */
    color: white;
}

.btn.btn-join.vote-btn.vote-not-sure {
    background-color: #6c757d; /* Gray */
    color: white;
}

.btn.btn-join.vote-btn.vote-selected {
    border: 2px solid #000; /* Bold black border for selected vote */
    opacity: 0.8; /* Slightly dim to indicate selection */
}

.btn.btn-join.vote-btn:disabled {
    cursor: not-allowed;
    opacity: 0.6; /* Dim disabled buttons */
}

/* Clickable reason boxes */
.reason-box {
    transition: background-color 0.3s;
}
.reason-box:hover {
    background-color: #f8f9fa; /* Light gray hover effect */
}

.breadcrumbs a {
    color: #007bff;
    text-decoration: none;
}
.breadcrumbs a:hover {
    text-decoration: underline;
}

/* Graph Tile */
.graph-tile {
    width: 100%;
    height: 300px; /* Increased from 200px */
    background-color: #f8f9fa;
    border-radius: 5px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Yes/No Buttons */
.yes-no-btn.selected-yes {
    background-color: #28a745; /* Green */
    color: white;
}
.yes-no-btn.selected-yes:hover {
    background-color: #218838;
}
.yes-no-btn.selected-no {
    background-color: #dc3545; /* Red */
    color: white;
}
.yes-no-btn.selected-no:hover {
    background-color: #c82333;
}

/* Flash feedback for Yes/No buttons */
.yes-no-btn.flash-selected {
    border: 2px solid #007bff;
    animation: flash-border 0.5s;
}
@keyframes flash-border {
    0% { border-color: #007bff; }
    50% { border-color: transparent; }
    100% { border-color: #007bff; }
}

/* Needs Input Fields */
.needs-input {
    margin-bottom: 10px;
}

/* Priority Needs Select */
select[multiple] {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 16px;
}

.career-btn {
    margin: 5px;
}
.career-btn.active {
    background-color: #0056b3;
    color: white;
    border-color: #0056b3;
}

.btn-join-active {
    background-color: #003087; /* Darker blue than #007bff */
    color: white; /* Ensure text readability */
}
.btn-join-active:hover {
    background-color: #002669; /* Even darker on hover */
    color: white;
}