/* Custom scrollbar for a cleaner look */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #fdfdfd; }
::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #9ca3af; }

/* Primary font for consistency */
body { font-family: 'Inter', 'Helvetica Neue', 'Helvetica', 'Arial', 'sans-serif'; background-color: #F5F7F6; }

/* Style for the active category filter */
.subcategory-active { background-color: #E6F3F0; font-weight: 600; color: #2A9D8F; }

/* Prose styles for editable content */
.prose-editor:focus { box-shadow: 0 0 0 2px rgba(42, 157, 143, 0.5); border-radius: 4px; outline: none; }

/* Expanded report state */
aside[data-state="expanded"] {
    position: fixed;
    z-index: 50;
    width: 800px;
    height: 90vh;
    max-height: 800px;
    min-width: 400px;
    min-height: 500px;
    box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.15);
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    resize: both;
    overflow: hidden;
    background-color: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.drag-handle { cursor: move; }

.resize-handle {
    position: absolute;
    width: 20px;
    height: 20px;
    bottom: 0;
    right: 0;
    cursor: se-resize;
    background-image: linear-gradient(135deg, #e5e7eb 25%, transparent 25%, transparent 50%, #e5e7eb 50%, #e5e7eb 75%, transparent 75%, transparent 100%);
    background-size: 8px 8px;
}

#hover-preview-arrow {
    position: absolute;
    width: 12px;
    height: 12px;
    background: inherit;
    transform: rotate(45deg);
}
