            .upload-area {
                position: relative;
                display: inline-block;
                width: 100%;
                max-width: 500px;
            }

            #doc_upload {
                display: none;
            }

            .upload-box {
                border: 2px dashed #667eea;
                border-radius: 10px;
                padding: 40px 20px;
                text-align: center;
                background: linear-gradient(135deg, rgba(102, 126, 234, 0.05) 0%, rgba(118, 75, 162, 0.05) 100%);
                cursor: pointer;
                transition: all 0.3s ease;
            }

            .upload-box:hover {
                border-color: #764ba2;
                background: linear-gradient(135deg, rgba(102, 126, 234, 0.1) 0%, rgba(118, 75, 162, 0.1) 100%);
                box-shadow: 0 5px 20px rgba(102, 126, 234, 0.2);
            }

            .upload-box.drag-over {
                border-color: #764ba2;
                background: linear-gradient(135deg, rgba(102, 126, 234, 0.15) 0%, rgba(118, 75, 162, 0.15) 100%);
                box-shadow: 0 8px 30px rgba(102, 126, 234, 0.3);
            }

            .upload-icon {
                font-size: 48px;
                color: #667eea;
                margin-bottom: 15px;
            }

            .upload-text h4 {
                color: #333;
                margin: 10px 0 5px 0;
                font-weight: 600;
            }

            .upload-text p {
                color: #666;
                font-size: 14px;
                margin: 0;
            }

            .upload-text .small-text {
                color: #999;
                font-size: 12px;
                margin-top: 10px;
            }

            .file-item {
                background: white;
                border: 1px solid #e0e0e0;
                border-radius: 8px;
                padding: 12px;
                margin-bottom: 10px;
                display: flex;
                justify-content: space-between;
                align-items: center;
                transition: all 0.2s ease;
            }

            .file-item:hover {
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
                border-color: #667eea;
            }

            .file-info {
                display: flex;
                align-items: center;
                flex-grow: 1;
                gap: 12px;
            }

            .file-icon {
                font-size: 24px;
                color: #667eea;
            }

            .file-details {
                text-align: left;
            }

            .file-name {
                color: #333;
                font-weight: 500;
                font-size: 14px;
                word-break: break-word;
            }

            .file-size {
                color: #999;
                font-size: 12px;
                margin-top: 3px;
            }

            .file-actions {
                display: flex;
                gap: 8px;
                align-items: center;
            }

            .btn-remove {
                background: #ff6b6b;
                border: none;
                color: white;
                padding: 6px 10px;
                border-radius: 5px;
                cursor: pointer;
                font-size: 12px;
                transition: all 0.2s ease;
            }

            .btn-remove:hover {
                background: #ff5252;
                transform: scale(1.05);
            }

            .file-list-container {
                display: none;
                margin-top: 25px;
                animation: slideDown 0.3s ease;
            }

            .file-list-container.show {
                display: block;
            }

            @keyframes slideDown {
                from {
                    opacity: 0;
                    transform: translateY(-10px);
                }
                to {
                    opacity: 1;
                    transform: translateY(0);
                }
            }

            .file-list-header {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-bottom: 15px;
                padding-bottom: 10px;
                border-bottom: 2px solid #667eea;
            }

            .file-list-header h5 {
                color: #333;
                margin: 0;
                font-weight: 600;
            }

            .file-count {
                background: #667eea;
                color: white;
                padding: 3px 10px;
                border-radius: 20px;
                font-size: 12px;
                font-weight: 600;
            }

            .files-list {
                max-height: 350px;
                overflow-y: auto;
            }

            .files-list::-webkit-scrollbar {
                width: 6px;
            }

            .files-list::-webkit-scrollbar-track {
                background: #f1f1f1;
                border-radius: 10px;
            }

            .files-list::-webkit-scrollbar-thumb {
                background: #667eea;
                border-radius: 10px;
            }

            .files-list::-webkit-scrollbar-thumb:hover {
                background: #764ba2;
            }
