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

::-webkit-scrollbar-track {
    background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

.json-viewer {
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.85rem;
}

/* Custom styles for markdown headers */
.prose h1, .prose h1 {
    font-size: 1.5rem !important;
    font-weight: bold !important;
    margin-top: 1rem !important;
    margin-bottom: 0.5rem !important;
    color: #1e293b !important;
    line-height: 1.2 !important;
}

.prose h2, .prose h2 {
    font-size: 1.25rem !important;
    font-weight: bold !important;
    margin-top: 1rem !important;
    margin-bottom: 0.5rem !important;
    color: #1e293b !important;
    line-height: 1.2 !important;
}

.prose h3, .prose h3 {
    font-size: 1.125rem !important;
    font-weight: bold !important;
    margin-top: 0.75rem !important;
    margin-bottom: 0.5rem !important;
    color: #1e293b !important;
    line-height: 1.2 !important;
}

/* Also apply to the response container directly */
.max-w-none h1, .max-w-none h1 {
    font-size: 1.5rem !important;
    font-weight: bold !important;
    margin-top: 1rem !important;
    margin-bottom: 0.5rem !important;
    color: #1e293b !important;
}

/* Custom styles for markdown lists */
.prose ul, .prose ol, .max-w-none ul, .max-w-none ol {
    list-style-type: disc !important;
    margin-left: 1.5rem !important;
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
}

.prose ul ul, .prose ol ol, .max-w-none ul ul, .max-w-none ol ol {
    list-style-type: circle !important;
    margin-left: 1rem !important;
}

.prose li, .max-w-none li {
    margin-bottom: 0.25rem !important;
    line-height: 1.4 !important;
}

.prose ol, .max-w-none ol {
    list-style-type: decimal !important;
}

.prose ol li, .max-w-none ol li {
    list-style-type: decimal !important;
}

/* Custom styles for markdown tables */
.prose table, .max-w-none table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 0.375rem !important;
    overflow: hidden !important;
}

.prose th, .max-w-none th, .prose td, .max-w-none td {
    border: 1px solid #e2e8f0 !important;
    padding: 0.5rem 0.75rem !important;
    text-align: left !important;
    vertical-align: top !important;
}

.prose th, .max-w-none th {
    background-color: #f8fafc !important;
    font-weight: 600 !important;
    color: #374151 !important;
    border-bottom: 2px solid #cbd5e1 !important;
}

.prose td, .max-w-none td {
    color: #4b5563 !important;
}

.prose tr:nth-child(even), .max-w-none tr:nth-child(even) {
    background-color: #f9fafb !important;
}

.prose tr:hover, .max-w-none tr:hover {
    background-color: #f3f4f6 !important;
}

/* Special handling for checkbox columns */
.prose td:first-child, .max-w-none td:first-child {
    width: 2rem !important;
    text-align: center !important;
    font-weight: bold !important;
}