/* =========================================== */ /* == Styles for the Multi-Step Test Page == */ /* =========================================== */ /* --- Main Container --- */ .new-test-container { max-width: 700px; margin: 2rem auto; } /* --- The Slider Mechanism --- */ .symptom-slider-container { width: 100%; overflow: hidden; /* This is essential for hiding the other slides */ } /* This is the wrapper that holds all slides in a long horizontal row */ .symptom-slider-wrapper { display: flex; width: 400%; /* We have 4 slides, so 4 * 100% = 400% */ transition: transform 0.5s ease-in-out; /* This creates the smooth sliding animation */ } /* --- Individual Slide Styling --- */ .symptom-slide { width: 25%; /* Each slide is 1/4 of the wrapper's width */ flex-shrink: 0; /* Prevents slides from shrinking to fit */ padding: 2.5rem; box-sizing: border-box; } .symptom-slide h3 { margin-bottom: 2rem; text-align: center; font-weight: 600; color: #343a40; } /* --- Custom Radio Button Box Styling --- */ /* First, we reset the default Bootstrap container for the radio buttons */ .symptom-slide .form-check { padding: 0; margin-bottom: 1rem; } /* Then, we style the LABEL to look like a big, clickable button/card */ .symptom-slide .form-check-label { display: block; /* Makes the label take up the full width for easier clicking */ background-color: #f8f9fa; padding: 1rem 1.25rem; border: 2px solid #dee2e6; border-radius: 0.375rem; /* Standard Bootstrap border-radius */ cursor: pointer; transition: all 0.2s ease-in-out; /* Smooth transition for hover/active states */ font-weight: 500; } /* Add a hover effect for better user feedback */ .symptom-slide .form-check-label:hover { border-color: #8f94fb; /* A nice highlight color */ transform: translateY(-2px); /* A slight "lift" effect */ } /* This is the key part: we completely hide the original radio button circle */ .symptom-slide .form-check input[type="radio"] { display: none; opacity: 0; position: fixed; width: 0; } /* This is the magic: When the hidden radio button is checked, we style its ADJACENT label */ .symptom-slide .form-check input[type="radio"]:checked + label { background-color: #e9eafd; /* A light, pleasing primary color */ border-color: #4e54c8; /* Your main primary color */ color: #4e54c8; font-weight: 600; box-shadow: 0 4px 12px rgba(78, 84, 200, 0.15); /* Adds a subtle depth */ } /* --- Button Styling --- */ .next-btn { float: right; margin-top: 1.5rem; } .symptom-submit-btn { font-weight: 600; padding-top: 0.75rem; padding-bottom: 0.75rem; }