/* FECdesk - Permissions Management Styles */
/* ============================================ */

/* Role Cards */
.perm-role-card {
    transition: all 0.2s ease;
}

.perm-role-card:hover {
    transform: translateY(-1px);
}

/* Resource Group Expand/Collapse */
.perm-resource-group .perm-actions-grid {
    display: none;
    animation: permSlideDown 0.2s ease;
}

.perm-resource-group.perm-expanded .perm-actions-grid {
    display: block;
}

.perm-resource-group.perm-expanded .perm-chevron {
    transform: rotate(180deg);
}

@keyframes permSlideDown {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Custom Checkbox Styling */
.perm-checkbox:checked + div {
    background-color: var(--md-sys-color-primary, #0043c0);
    border-color: var(--md-sys-color-primary, #0043c0);
}

.perm-checkbox:checked + div .material-symbols-outlined {
    display: block !important;
}

.perm-checkbox:not(:checked) + div .material-symbols-outlined {
    display: none !important;
}

/* Permission count badges */
.perm-count-badge {
    font-variant-numeric: tabular-nums;
    min-width: 2.5rem;
    text-align: center;
}

/* User permission overrides */
.user-perm-checkbox {
    accent-color: var(--md-sys-color-primary, #0043c0);
}

/* Scrollbar for user permissions */
#tab-dozvole ::-webkit-scrollbar {
    width: 4px;
}

#tab-dozvole ::-webkit-scrollbar-track {
    background: transparent;
}

#tab-dozvole ::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.15);
    border-radius: 2px;
}

#tab-dozvole ::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.25);
}

/* Loading spinner */
.perm-loading .animate-spin {
    animation: spin 1s linear infinite;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
    #tab-dozvole .lg\\:flex-row {
        flex-direction: column;
    }
    
    #tab-dozvole .lg\\:w-1\\/3,
    #tab-dozvole .lg\\:w-2\\/3 {
        width: 100%;
    }
}

/* Override indicator for employee permissions */
[id^="userPermsContainer-"] label:has(input:checked) {
    border-color: rgba(0, 67, 192, 0.15);
}

/* Modal overlay animation */
#roleModal,
#confirmDeleteModal {
    animation: fadeIn 0.15s ease;
}

#roleModal > div,
#confirmDeleteModal > div {
    animation: scaleIn 0.2s ease;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
