/* LINGXI Profile Sidebar Styles */

/* --- Layout --- */
.lx-sidebar {
    display: flex;
    flex-direction: column;
    height: 100vh;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-right: 1px solid #e2e8f0;
    position: relative;
    z-index: 20;
    transition: width 0.3s ease;
}

/* Top Brand Area */
.lx-brand {
    height: 64px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    padding: 0 24px;
    border-bottom: 1px solid #f1f5f9;
}

/* Display Space (Scrollable) */
.lx-display-space {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    /* Hide scrollbar for clean look */
    scrollbar-width: none; 
    -ms-overflow-style: none;
    position: relative; /* Ensure sticky context */
}
.lx-display-space::-webkit-scrollbar {
    display: none;
}

/* Fixed Section (Non-draggable, standard scroll) */
.lx-fixed-section {
    /* Standard flow: scrolls with content, but physically separate to ensure top position */
    position: relative;
    width: 100%;
}

.lx-fixed-section .lx-card {
    cursor: default !important; /* Explicitly non-draggable cursor */
    /* Ensure standard spacing is preserved */
    margin-bottom: 16px;
}

/* Bottom Dock (Fixed) */
.lx-dock {
    flex-shrink: 0;
    padding: 16px;
    background: #f8fafc; /* Slightly different bg */
    border-top: 1px solid #e2e8f0;
}

/* --- Components Card Style --- */
.lx-card {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    border: 1px solid #f1f5f9;
    margin-bottom: 16px;
    
    /* FIX: Removed overflow: hidden to allow dropdown menu to show */
    overflow: visible; 
    position: relative;
    
    transition: all 0.2s ease;
}

.lx-card:hover {
    /* transform: translateY(-2px); REMOVED to prevent stacking context issues with fixed dropdowns */
    box-shadow: 0 8px 16px rgba(0,0,0,0.06);
    border-color: #e2e8f0;
}

/* Dragging State */
.lx-card.sortable-ghost {
    opacity: 0.4;
    background: #f1f5f9;
    border: 2px dashed #cbd5e1;
}

/* --- 1. Summary Card --- */
.lx-summary-card {
    padding: 20px;
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
    color: #fff;
    /* Ensure border radius clips the background */
    border-radius: 16px; 
}
.lx-summary-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}
/* Menu Trigger Style */
.lx-card-menu-trigger {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.2s;
}
.lx-card-menu-trigger:hover {
    background: rgba(255, 255, 255, 0.2);
}

.lx-summary-score {
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
}
.lx-summary-role {
    font-size: 12px;
    opacity: 0.8;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* --- 2. Ability Radar --- */
.lx-radar-container {
    height: 220px;
    width: 100%;
    position: relative;
}

/* --- 3. Custom Entry (Add Button) - REMOVED per user request, managed via 3-dot menu --- */
/* .lx-add-entry {
    border: 2px dashed #e2e8f0;
    border-radius: 16px;
    padding: 12px;
    text-align: center;
    color: #94a3b8;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 14px;
    font-weight: 500;
}
.lx-add-entry:hover {
    border-color: #4f46e5;
    color: #4f46e5;
    background: #eef2ff;
} */

/* --- Role Themes (CSS Variables) --- */
body.role-student { --profile-primary: #4f46e5; }
body.role-parent  { --profile-primary: #10b981; }
body.role-teacher { --profile-primary: #f59e0b; }
