/* ----------------------------------------
   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; }
.v-tabs a:hover { background-color: #f0f0f0; border-radius: 4px; }
.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.components-list {
    border: 2px solid #8dc63f; border-radius: 8px;
    padding: 1rem 1rem 10px 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: 1.5rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.07);
}

/* ----------------------------------------
   NEW STYLES FOR EXPERIMENT 3
   ---------------------------------------- */

/* Control Panel Layout */
.control-panel {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
}
.control-item {
    flex: 1;
}

/* Sliders Area */
#parameter-sliders {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}
.slider-container {
    display: flex;
    flex-direction: column;
}
.slider-container label {
    font-size: 0.9em;
    font-weight: 600;
    margin-bottom: 0.5rem;
}
.slider-container .slider-value {
    font-weight: bold;
    color: #3273dc;
}
input[type="range"] {
    width: 100%;
}

/* Plots Layout */
.plots-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: 1.5rem;
    width: 100%;
}
.plot-wrapper-top {
    grid-column: 1 / 3; /* Span both columns */
    height: 250px;
}
.plot-wrapper-bottom {
    height: 220px;
}
.plot-wrapper-top canvas, .plot-wrapper-bottom canvas {
    width: 100%;
    height: 100%;
}

/* Observations Panel */
#observations p {
    font-size: 1.05em;
    line-height: 1.7;
    text-align: center;
}
#observations strong {
    color: #c43737;
}