/* Base styles for the diagnostic guide */
body {
    font-family: 'Inter', sans-serif; /* Tailwind uses a nice system font stack by default, Inter is a good explicit choice */
}

.content-section {
    transition: max-height 0.5s ease-out, opacity 0.5s ease-out;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
}

.content-section.open {
    max-height: 2000px; /* Adjust as needed for content */
    opacity: 1;
}

/* Custom scrollbar for better aesthetics */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1; /* slate-300 */
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94a3b8; /* slate-500 */
}

/* Focus styles for accessibility */
button:focus-visible {
    outline: 2px solid #38bdf8;
    outline-offset: 2px;
}

details summary {
    list-style: none;
    padding: 0.75rem;
    border-radius: 0.375rem;
    transition: background-color 0.15s ease;
}

details summary::-webkit-details-marker {
    display: none;
}

details summary::before {
    content: '▶';
    display: inline-block;
    margin-right: 0.5rem;
    transform: rotate(0);
    transition: transform 0.2s ease;
}

details[open] summary::before {
    transform: rotate(90deg);
}

details summary:hover {
    background-color: #f8fafc;
}

/* Improve contrast for better readability */
.text-stone-600 {
    color: #57534e;
}

/* Improve button accessibility */
button {
    cursor: pointer;
}