/* ----------------------------------------
   Base & General Styling (Consistent)
   ---------------------------------------- */
body { font-family: 'Open Sans', sans-serif; line-height: 1.6; color: #333; padding-top: 20px; }
.tasks-heading { text-align: center; font-size: 1.25rem; font-weight: 600; margin-bottom: 0.5rem; color: #444; }
.v-tabs ul { display: flex; overflow-x: auto; white-space: nowrap; list-style: none; padding: 0; margin: 0 3%; border-bottom: 1px solid #ddd; }
.v-tabs li { display: inline-block; margin: 0; }
.v-tabs a { display: inline-block; padding: 0.75rem 1.25rem; text-decoration: none; color: #333; font-weight: 500; }
.v-tabs li.active > a { color: #3273dc; border-bottom: 3px solid #3273dc; }
.subheading-box { background-color: #f7fdf7; border-left: 4px solid #3c763d; padding: 0.75rem 1rem; margin: 1rem 3% 1.5rem 3%; border-radius: 4px; }
.subheading-box .title { color: #3c763d; font-size: 1.25rem; margin: 0; font-weight: 600; }
.v-datalist-container { border: 2px solid #8dc63f; border-radius: 8px; padding: 1rem; background-color: #fafafa; }
.v-datalist-title, .v-datalist-subtitle { margin-bottom: 0.75rem; padding-bottom: 0.75rem; border-bottom: 1px solid #eee; text-align: center; }
.white-boxed-panel { background-color: #fff; border: 1px solid #dbdbdb; border-radius: 6px; padding: 1.25rem; margin-bottom: 0; /* Removed bottom margin */ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.07); }

/* ----------------------------------------
   NEW STYLES FOR THIS EXPERIMENT
   ---------------------------------------- */
.problem-text {
    font-size: 1.1em; padding: 1rem; text-align: center; background-color: #f0f5ff; border-radius: 6px;
}
.problem-text strong { font-family: 'Courier New', Courier, monospace; }

.button-container {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 1.5rem;
}

.function-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.function-card {
    border: 3px solid #dbdbdb;
    border-radius: 6px;
    padding: 1rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}
.function-card:hover {
    border-color: #3273dc;
    transform: translateY(-3px);
}
.function-card.is-selected {
    border-color: #23d160;
    background-color: #f6fff9;
    box-shadow: 0 4px 12px rgba(35, 209, 96, 0.2);
}
.function-card h5 { font-size: 1.2em; font-weight: 600; }
.function-card p { font-family: 'Courier New', Courier, monospace; }

.feedback-panel {
    /* Ensure this panel takes up the full height of its column */
    height: 100%;
    display: flex;
    flex-direction: column;
}

.observations-content {
    font-size: 1.05em;
    text-align: center;
    padding: 0 1rem;
    flex-grow: 1; /* Allow this section to grow to fill space */
}
.feedback-correct { color: #23d160; font-weight: bold; }
.feedback-partial { color: #ffac00; font-weight: bold; }
.feedback-incorrect { color: #ff3860; font-weight: bold; }
.feedback-reason { margin-top: 1rem; font-size: 0.95em; }

.plot-wrapper {
    height: 250px;
    margin-top: 1rem;
}
.plot-wrapper.is-hidden { display: none; }
