* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.directory {
    font-family: 'Inter', sans-serif;
    background: #fafafa;
    min-height: 100vh;
    padding: 40px 20px;
    max-width: 1200px;
    margin: 0 auto;

            /* Directory Header */
            .directory-header {
                display: flex;
                justify-content: space-between;
                align-items: flex-start;
                margin-bottom: 32px;
                padding: 0 8px;
                gap: 24px;

                .directory-title-wrapper {
                    display: flex;
                    flex-direction: column;
                    gap: 6px;
                }

                .directory-title {
                    font-size: 1.75rem;
                    font-weight: 700;
                    color: #0f172a;
                    margin: 0;
                    display: flex;
                    align-items: center;
                    gap: 12px;

                    i {
                        color: #f59e0b;
                    }
                }

                .directory-desc {
                    font-size: 0.95rem;
                    color: #64748b;
                    margin: 0;
                    line-height: 1.5;
                }

                .directory-header-right {
                    display: flex;
                    align-items: center;
                    gap: 12px;
                }

                .directory-count {
                    font-size: 0.95rem;
                    color: #64748b;
                    font-weight: 500;
                    padding: 8px 16px;
                    background: white;
                    border-radius: 12px;
                    border: 1px solid rgba(0,0,0,0.04);
                    box-shadow: 0 1px 0 rgba(0,0,0,0.02);
                }

                .btn-upload {
                    display: flex;
                    align-items: center;
                    gap: 8px;
                    padding: 12px 20px;
                    background: linear-gradient(135deg, #2563eb, #4f46e5);
                    color: white;
                    border: none;
                    border-radius: 12px;
                    font-size: 0.95rem;
                    font-weight: 600;
                    cursor: pointer;
                    transition: all 0.3s ease;
                    font-family: 'Inter', sans-serif;
                    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.25);

                    &:hover {
                        transform: translateY(-2px);
                        box-shadow: 0 8px 20px rgba(37, 99, 235, 0.35);
                        filter: brightness(1.05);
                    }

                    &:active {
                        transform: translateY(0);
                    }
                }
            }

            /* Breadcrumb */
            .breadcrumb {
                display: flex;
                align-items: center;
                gap: 8px;
                margin-bottom: 24px;
                padding: 0 8px;

                a {
                    color: #64748b;
                    text-decoration: none;
                    font-size: 0.9rem;
                    transition: color 0.3s ease;
                    display: flex;
                    align-items: center;
                    gap: 6px;

                    &:hover {
                        color: #2563eb;
                    }

                    &.active {
                        color: #0f172a;
                        font-weight: 600;
                    }
                }

                span {
                    color: #cbd5e1;
                }
            }

            /* Directory Grid */
            .directory-grid {
                display: grid;
                grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
                gap: 20px;
            }

            /* Folder Card */
            .folder-card {
                background: white;
                border-radius: 20px;
                padding: 24px;
                border: 1px solid rgba(0,0,0,0.04);
                box-shadow: 0 1px 0 rgba(0,0,0,0.02);
                cursor: pointer;
                transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
                display: flex;
                flex-direction: row;
                gap: 16px;
                position: relative;
                align-items: center;

                &:hover {
                    transform: translateY(-4px);
                    box-shadow: 0 12px 24px rgba(0,0,0,0.06);
                    border-color: rgba(0,0,0,0.08);

                    .folder-icon {
                        transform: scale(1.05);
                    }
                }

                /* Folder Icons */
                .folder-icon {
                    width: 72px;
                    height: 72px;
                    border-radius: 16px;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    font-size: 2rem;
                    color: white;
                    background: linear-gradient(135deg, #fbbf24, #f59e0b);
                    flex-shrink: 0;
                    transition: transform 0.3s ease;
                }

                /* Folder Info */
                .folder-info {
                    flex: 1;
                }

                .folder-label {
                    font-size: 1.05rem;
                    font-weight: 600;
                    color: #1e293b;
                    margin: 0 0 6px;
                    line-height: 1.4;
                    word-break: break-word;
                }

                .folder-meta {
                    display: flex;
                    flex-direction: row;
                    justify-content: space-between;
                    gap: 16px;
                    margin: 0;
                    font-size: 0.75rem;
                    color: #64748b;

                    span {
                        display: flex;
                        align-items: center;
                        gap: 6px;

                        i {
                            font-size: 0.8rem;
                            width: 14px;
                            text-align: center;
                            opacity: 0.5;
                        }
                    }
                }

                /* Delete Button */
                .btn-delete {
                    position: absolute;
                    top: 16px;
                    right: 16px;
                    width: 32px;
                    height: 32px;
                    border: none;
                    background: transparent;
                    color: #9ca3af;
                    border-radius: 8px;
                    cursor: pointer;
                    transition: all 0.3s ease;
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    flex-shrink: 0;
                    padding: 0;
                    z-index: 10;
                    opacity: 0.5;

                    &:hover {
                        background: #fee2e2;
                        color: #dc2626;
                        opacity: 1;
                        transform: scale(1.1);
                    }

                    &:active {
                        transform: scale(1);
                    }

                    i {
                        font-size: 0.9rem;
                    }
                }
            }

            /* Responsive */
            @media (max-width: 768px) {
                padding: 24px 16px;

                .directory-header {
                    flex-direction: column;
                    align-items: flex-start;
                    gap: 16px;

                    .directory-title {
                        font-size: 1.4rem;
                    }
                }

                .directory-grid {
                    grid-template-columns: 1fr 1fr;
                    gap: 16px;
                }

                .folder-card {
                    padding: 20px;

                    .folder-icon {
                        width: 64px;
                        height: 64px;
                        font-size: 1.75rem;
                        border-radius: 14px;
                    }
                }
            }

            @media (max-width: 480px) {
                .directory-grid {
                    grid-template-columns: 1fr;
                }
            }
        }